*
***/
-/* TODO : hex decoder / encoder should be implemented in testutil.c */
-static void hexdump(const unsigned char *a, size_t len)
-{
- size_t i;
-
- for (i = 0; i < len; i++)
- fprintf(stderr, "%02x", a[i]);
-}
-
static void benchmark_poly1305()
{
# ifdef OPENSSL_CPUID_OBJ
size_t expectedlen = test.expected.size;
unsigned char out[16];
- if (expectedlen != sizeof(out))
+ if (!TEST_size_t_eq(expectedlen, sizeof(out)))
return 0;
Poly1305_Init(&poly1305, key);
Poly1305_Update(&poly1305, in, inlen);
Poly1305_Final(&poly1305, out);
- if (memcmp(out, expected, expectedlen) != 0) {
- fprintf(stderr, "Poly1305 test #%d failed.\n", idx);
- fprintf(stderr, "got: ");
- hexdump(out, sizeof(out));
- fprintf(stderr, "\nexpected: ");
- hexdump(expected, expectedlen);
- fprintf(stderr, "\n");
+ if (!TEST_mem_eq(out, expectedlen, expected, expectedlen)) {
+ TEST_info("Poly1305 test #%d failed.", idx);
return 0;
}
Poly1305_Update(&poly1305, in+1, inlen-1);
Poly1305_Final(&poly1305, out);
- if (memcmp(out, expected, expectedlen) != 0) {
- fprintf(stderr, "Poly1305 test #%d/1+(N-1) failed.\n", idx);
- fprintf(stderr, "got: ");
- hexdump(out, sizeof(out));
- fprintf(stderr, "\nexpected: ");
- hexdump(expected, expectedlen);
- fprintf(stderr, "\n");
+ if (!TEST_mem_eq(out, expectedlen, expected, expectedlen)) {
+ TEST_info("Poly1305 test #%d/1+(N-1) failed.", idx);
return 0;
}
}
Poly1305_Update(&poly1305, in+half, inlen-half);
Poly1305_Final(&poly1305, out);
- if (memcmp(out, expected, expectedlen) != 0) {
- fprintf(stderr, "Poly1305 test #%d/2 failed.\n", idx);
- fprintf(stderr, "got: ");
- hexdump(out, sizeof(out));
- fprintf(stderr, "\nexpected: ");
- hexdump(expected, expectedlen);
- fprintf(stderr, "\n");
+ if (!TEST_mem_eq(out, expectedlen, expected, expectedlen)) {
+ TEST_info("Poly1305 test #%d/2 failed.", idx);
return 0;
}
Poly1305_Update(&poly1305, in+half, inlen-half);
Poly1305_Final(&poly1305, out);
- if (memcmp(out, expected, expectedlen) != 0) {
- fprintf(stderr, "Poly1305 test #%d/%" OSSLzu "+%" OSSLzu " failed.\n",
- idx, half, inlen-half);
- fprintf(stderr, "got: ");
- hexdump(out, sizeof(out));
- fprintf(stderr, "\nexpected: ");
- hexdump(expected, expectedlen);
- fprintf(stderr, "\n");
+ if (!TEST_mem_eq(out, expectedlen, expected, expectedlen)) {
+ TEST_info("Poly1305 test #%d/%zu+%zu failed.",
+ idx, half, inlen-half);
return 0;
}
}
return 1;
}
-int main(int argc, char **argv)
+int test_main(int argc, char **argv)
{
int result = 0;
int iter_argv;