sparse-tools/src/test_merkle.c

60 lines
1.1 KiB
C

//
// Created by haraldwolff on 08.08.22.
//
#include <stdlib.h>
#include <stdio.h>
#include <unistd.h>
#include <errno.h>
#include <merkle.h>
#include <string.h>
int main(int argc, char *argv[]){
merkle_t *merkle;
/*
for (int n=4; n<5; n++)
for (int mw=12; mw < 13 ; mw++)
{
*/
int s = merkle_create(&merkle, 8, 1048768);
if (s){
printf("failed to create merkle tree. error=%d (%s)\n", s, strerror(s));
} else{
printf("created merkle tree with n=%d\n", merkle->parameters.n);
printf("n=%d depth=%d width=%d length=%d\n", merkle->parameters.n, merkle->parameters.depth, merkle->parameters.width, merkle->parameters.length);
for (int n=0;n<merkle->parameters.length;n++)
merkle->hashes[n] = n;
/*
int w = 1;
for (int n = 0; n < merkle->parameters.width; n++) {
printf("N=%3d ", n);
for (int d=0;d<=merkle->parameters.depth;d++) {
uint64_t th;
s = merkle_get(merkle, d, n, &th);
if (s < 0) {
printf("D:%d G:%d E=%d (%s)\n", d, merkle->parameters.n, s, strerror(s));
} else {
printf("%4d ", th);
}
}
printf("\n");
}
*/
merkle_free(merkle);
}
/*
}
*/
return 0;
}