X-Git-Url: https://git.openssl.org/?p=openssl.git;a=blobdiff_plain;f=test%2Fpoly1305_internal_test.c;h=e2f93816214114809e07ecc8cd639c6ea507efc0;hp=1ede8747a0c8c986f533b50fcb4bac5f18971c35;hb=459217237640369a092084ccb80175b5758f40b1;hpb=edd689efbfa26a657a5d8310f43a4f11d29a460e diff --git a/test/poly1305_internal_test.c b/test/poly1305_internal_test.c index 1ede8747a0..e2f9381621 100644 --- a/test/poly1305_internal_test.c +++ b/test/poly1305_internal_test.c @@ -1,7 +1,7 @@ /* - * Copyright 2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2016-2018 The OpenSSL Project Authors. All Rights Reserved. * - * Licensed under the OpenSSL license (the "License"). You may not use + * Licensed under the Apache License 2.0 (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy * in the file LICENSE in the source distribution or at * https://www.openssl.org/source/license.html @@ -13,21 +13,9 @@ #include #include "testutil.h" -#include "test_main_custom.h" - -#ifdef __VMS -# pragma names save -# pragma names as_is,shortened -#endif - #include "internal/poly1305.h" - -#ifdef __VMS -# pragma names restore -#endif - #include "../crypto/poly1305/poly1305_local.h" -#include "e_os.h" +#include "internal/nelem.h" typedef struct { size_t size; @@ -46,46 +34,6 @@ typedef struct { * ***/ -static void benchmark_poly1305() -{ -# ifdef OPENSSL_CPUID_OBJ - POLY1305 poly1305; - unsigned char key[32]; - unsigned char buf[8192]; - unsigned long long stopwatch; - unsigned long long OPENSSL_rdtsc(); - unsigned int i; - - memset (buf,0x55,sizeof(buf)); - memset (key,0xAA,sizeof(key)); - - Poly1305_Init(&poly1305, key); - - for (i=0;i<100000;i++) - Poly1305_Update(&poly1305,buf,sizeof(buf)); - - stopwatch = OPENSSL_rdtsc(); - for (i=0;i<10000;i++) - Poly1305_Update(&poly1305,buf,sizeof(buf)); - stopwatch = OPENSSL_rdtsc() - stopwatch; - - printf("%g\n",stopwatch/(double)(i*sizeof(buf))); - - stopwatch = OPENSSL_rdtsc(); - for (i=0;i<10000;i++) { - Poly1305_Init(&poly1305, key); - Poly1305_Update(&poly1305,buf,16); - Poly1305_Final(&poly1305,buf); - } - stopwatch = OPENSSL_rdtsc() - stopwatch; - - printf("%g\n",stopwatch/(double)(i)); -# else - fprintf(stderr, - "Benchmarking of poly1305 isn't available on this platform\n"); -# endif -} - static TESTDATA tests[] = { /* * RFC7539 @@ -1611,7 +1559,7 @@ static int test_poly1305(int idx) Poly1305_Final(&poly1305, out); if (!TEST_mem_eq(out, expectedlen, expected, expectedlen)) { - TEST_info("Poly1305 test #%d/%" OSSLzu "+%" OSSLzu " failed.", + TEST_info("Poly1305 test #%d/%zu+%zu failed.", idx, half, inlen-half); return 0; } @@ -1621,31 +1569,8 @@ static int test_poly1305(int idx) return 1; } -int test_main(int argc, char **argv) +int setup_tests(void) { - int result = 0; - int iter_argv; - int benchmark = 0; - - for (iter_argv = 1; iter_argv < argc; iter_argv++) { - if (strcmp(argv[iter_argv], "-b") == 0) - benchmark = 1; - else if (strcmp(argv[iter_argv], "-h") == 0) - goto help; - } - ADD_ALL_TESTS(test_poly1305, OSSL_NELEM(tests)); - - result = run_tests(argv[0]); - - if (benchmark) - benchmark_poly1305(); - - return result; - - help: - printf("-h\tThis help\n"); - printf("-b\tBenchmark in addition to the tests\n"); - - return 0; + return 1; }