void test_signature_file(const char * read_filepath, mpz_t hash) { signature_attr attr; gen_signature_attr(&attr); gen_keys_pair(&attr); signature sign; mpz_init(sign.r); mpz_init(sign.s); FILE * stream = open_wrapper(read_filepath, "rb"); mpz_inp_wrapper(sign.r, stream); mpz_inp_wrapper(sign.s, stream); close_wrapper(stream); printf("Signature verification..."); if (test_signature(&sign, &attr, hash)) { printf(" [Ok]\n"); } else { printf(" [Failed]\n"); } mpz_clear(sign.r); mpz_clear(sign.s); free_signature_attr(&attr); free_keys_pair(&attr); }
int main() { if (set_up() < 0) { print_error("Test set_up() error"); goto error; } if (test_signature() < 0) { goto error; } tear_down(); return 0; error: return EXIT_FAILURE; }
int main(int argc, const char *argv[]) { test_signature(); return 0; }