From 02753e53a5038202fb36079cdd34b2143cb8bcf1 Mon Sep 17 00:00:00 2001 From: Jacob Barthelmeh Date: Thu, 8 Feb 2018 14:52:06 -0700 Subject: [PATCH] add some of AES key size macros to benchmark.c and test.c --- src/ssl.c | 12 +++++++++++- wolfcrypt/benchmark/benchmark.c | 30 ++++++++++++++++++++++++++++++ wolfcrypt/test/test.c | 9 ++++++++- 3 files changed, 49 insertions(+), 2 deletions(-) diff --git a/src/ssl.c b/src/ssl.c index 3606d180d..7929b46c7 100644 --- a/src/ssl.c +++ b/src/ssl.c @@ -13405,12 +13405,14 @@ int wolfSSL_EVP_MD_type(const WOLFSSL_EVP_MD *md) #endif #endif /* NO_DES3 */ +#ifndef NO_RC4 const WOLFSSL_EVP_CIPHER* wolfSSL_EVP_rc4(void) { static const char* type = "ARC4"; WOLFSSL_ENTER("wolfSSL_EVP_rc4"); return type; } +#endif #ifdef HAVE_IDEA const WOLFSSL_EVP_CIPHER* wolfSSL_EVP_idea_cbc(void) @@ -14339,12 +14341,19 @@ int wolfSSL_EVP_MD_type(const WOLFSSL_EVP_MD *md) return NULL; /* no static buffer support */ } +#ifndef NO_MD5 if (XSTRNCMP(evp_md, "MD5", 3) == 0) type = WC_MD5; - else if (XSTRNCMP(evp_md, "SHA", 3) == 0) + else +#endif +#ifndef NO_SHA + if (XSTRNCMP(evp_md, "SHA", 3) == 0) type = WC_SHA; else +#endif + { return NULL; + } #ifdef WOLFSSL_SMALL_STACK hmac = (Hmac*)XMALLOC(sizeof(Hmac), heap, DYNAMIC_TYPE_HMAC); @@ -14370,6 +14379,7 @@ int wolfSSL_EVP_MD_type(const WOLFSSL_EVP_MD *md) XFREE(hmac, heap, DYNAMIC_TYPE_HMAC); #endif + (void)evp_md; return ret; } diff --git a/wolfcrypt/benchmark/benchmark.c b/wolfcrypt/benchmark/benchmark.c index 6bfe0a54e..3a84cc84a 100644 --- a/wolfcrypt/benchmark/benchmark.c +++ b/wolfcrypt/benchmark/benchmark.c @@ -1703,12 +1703,18 @@ exit: void bench_aescbc(int doAsync) { +#ifdef WOLFSSL_AES_128 bench_aescbc_internal(doAsync, bench_key, 16, bench_iv, "AES-128-CBC-enc", "AES-128-CBC-dec"); +#endif +#ifdef WOLFSSL_AES_192 bench_aescbc_internal(doAsync, bench_key, 24, bench_iv, "AES-192-CBC-enc", "AES-192-CBC-dec"); +#endif +#ifdef WOLFSSL_AES_256 bench_aescbc_internal(doAsync, bench_key, 32, bench_iv, "AES-256-CBC-enc", "AES-256-CBC-dec"); +#endif } #endif /* HAVE_AES_CBC */ @@ -1815,12 +1821,18 @@ exit: void bench_aesgcm(int doAsync) { +#ifdef WOLFSSL_AES_128 bench_aesgcm_internal(doAsync, bench_key, 16, bench_iv, 12, "AES-128-GCM-enc", "AES-128-GCM-dec"); +#endif +#ifdef WOLFSSL_AES_192 bench_aesgcm_internal(doAsync, bench_key, 24, bench_iv, 12, "AES-192-GCM-enc", "AES-192-GCM-dec"); +#endif +#ifdef WOLFSSL_AES_256 bench_aesgcm_internal(doAsync, bench_key, 32, bench_iv, 12, "AES-256-GCM-enc", "AES-256-GCM-dec"); +#endif } #endif /* HAVE_AESGCM */ @@ -1917,12 +1929,18 @@ exit: void bench_aesecb(int doAsync) { +#ifdef WOLFSSL_AES_128 bench_aesecb_internal(doAsync, bench_key, 16, "AES-128-ECB-enc", "AES-128-ECB-dec"); +#endif +#ifdef WOLFSSL_AES_192 bench_aesecb_internal(doAsync, bench_key, 24, "AES-192-ECB-enc", "AES-192-ECB-dec"); +#endif +#ifdef WOLFSSL_AES_256 bench_aesecb_internal(doAsync, bench_key, 32, "AES-256-ECB-enc", "AES-256-ECB-dec"); +#endif } #endif /* WOLFSSL_AES_DIRECT */ @@ -1956,9 +1974,15 @@ static void bench_aescfb_internal(const byte* key, word32 keySz, const byte* iv, void bench_aescfb(void) { +#ifdef WOLFSSL_AES_128 bench_aescfb_internal(bench_key, 16, bench_iv, "AES-128-CFB"); +#endif +#ifdef WOLFSSL_AES_192 bench_aescfb_internal(bench_key, 24, bench_iv, "AES-192-CFB"); +#endif +#ifdef WOLFSSL_AES_256 bench_aescfb_internal(bench_key, 32, bench_iv, "AES-256-CFB"); +#endif } #endif /* WOLFSSL_AES_CFB */ @@ -2053,9 +2077,15 @@ static void bench_aesctr_internal(const byte* key, word32 keySz, const byte* iv, void bench_aesctr(void) { +#ifdef WOLFSSL_AES_128 bench_aesctr_internal(bench_key, 16, bench_iv, "AES-128-CTR"); +#endif +#ifdef WOLFSSL_AES_192 bench_aesctr_internal(bench_key, 24, bench_iv, "AES-192-CTR"); +#endif +#ifdef WOLFSSL_AES_256 bench_aesctr_internal(bench_key, 32, bench_iv, "AES-256-CTR"); +#endif } #endif /* WOLFSSL_AES_COUNTER */ diff --git a/wolfcrypt/test/test.c b/wolfcrypt/test/test.c index 9107223e3..f5088b660 100644 --- a/wolfcrypt/test/test.c +++ b/wolfcrypt/test/test.c @@ -671,16 +671,19 @@ int wolfcrypt_test(void* args) else printf( "AES test passed!\n"); +#ifdef WOLFSSL_AES_192 if ( (ret = aes192_test()) != 0) return err_sys("AES192 test failed!\n", ret); else printf( "AES192 test passed!\n"); +#endif +#ifdef WOLFSSL_AES_256 if ( (ret = aes256_test()) != 0) return err_sys("AES256 test failed!\n", ret); else printf( "AES256 test passed!\n"); - +#endif #ifdef HAVE_AESGCM if ( (ret = aesgcm_test()) != 0) return err_sys("AES-GCM test failed!\n", ret); @@ -5721,6 +5724,7 @@ int aes_test(void) return ret; } +#ifdef WOLFSSL_AES_192 int aes192_test(void) { #ifdef HAVE_AES_CBC @@ -5811,7 +5815,9 @@ int aes192_test(void) return ret; } +#endif /* WOLFSSL_AES_192 */ +#ifdef WOLFSSL_AES_256 int aes256_test(void) { #ifdef HAVE_AES_CBC @@ -5896,6 +5902,7 @@ int aes256_test(void) return ret; } +#endif /* WOLFSSL_AES_256 */ #ifdef HAVE_AESGCM