@@ -95,10 +95,18 @@ int test_wc_InitSha3(void)
9595{
9696 EXPECT_DECLS ;
9797#ifdef WOLFSSL_SHA3
98+ #ifndef WOLFSSL_NOSHA3_224
9899 DIGEST_INIT_TEST (wc_Sha3 , Sha3_224 );
100+ #endif
101+ #ifndef WOLFSSL_NOSHA3_256
99102 DIGEST_INIT_TEST (wc_Sha3 , Sha3_256 );
103+ #endif
104+ #ifndef WOLFSSL_NOSHA3_384
100105 DIGEST_INIT_TEST (wc_Sha3 , Sha3_384 );
106+ #endif
107+ #ifndef WOLFSSL_NOSHA3_512
101108 DIGEST_INIT_TEST (wc_Sha3 , Sha3_512 );
109+ #endif
102110#endif
103111 return EXPECT_RESULT ();
104112}
@@ -107,10 +115,18 @@ int test_wc_Sha3_Update(void)
107115{
108116 EXPECT_DECLS ;
109117#ifdef WOLFSSL_SHA3
118+ #ifndef WOLFSSL_NOSHA3_224
110119 DIGEST_ALT_UPDATE_TEST (wc_Sha3 , Sha3_224 );
120+ #endif
121+ #ifndef WOLFSSL_NOSHA3_256
111122 DIGEST_ALT_UPDATE_TEST (wc_Sha3 , Sha3_256 );
123+ #endif
124+ #ifndef WOLFSSL_NOSHA3_384
112125 DIGEST_ALT_UPDATE_TEST (wc_Sha3 , Sha3_384 );
126+ #endif
127+ #ifndef WOLFSSL_NOSHA3_512
113128 DIGEST_ALT_UPDATE_TEST (wc_Sha3 , Sha3_512 );
129+ #endif
114130#endif
115131 return EXPECT_RESULT ();
116132}
@@ -119,10 +135,18 @@ int test_wc_Sha3_Final(void)
119135{
120136 EXPECT_DECLS ;
121137#ifdef WOLFSSL_SHA3
138+ #ifndef WOLFSSL_NOSHA3_224
122139 DIGEST_ALT_FINAL_TEST (wc_Sha3 , Sha3_224 , SHA3_224 );
140+ #endif
141+ #ifndef WOLFSSL_NOSHA3_256
123142 DIGEST_ALT_FINAL_TEST (wc_Sha3 , Sha3_256 , SHA3_256 );
143+ #endif
144+ #ifndef WOLFSSL_NOSHA3_384
124145 DIGEST_ALT_FINAL_TEST (wc_Sha3 , Sha3_384 , SHA3_384 );
146+ #endif
147+ #ifndef WOLFSSL_NOSHA3_512
125148 DIGEST_ALT_FINAL_TEST (wc_Sha3 , Sha3_512 , SHA3_512 );
149+ #endif
126150#endif
127151 return EXPECT_RESULT ();
128152}
@@ -131,7 +155,7 @@ int test_wc_Sha3_Final(void)
131155int test_wc_Sha3_224_KATs (void )
132156{
133157 EXPECT_DECLS ;
134- #ifdef WOLFSSL_SHA3
158+ #if defined( WOLFSSL_SHA3 ) && !defined( WOLFSSL_NOSHA3_224 )
135159 DIGEST_KATS_TEST_VARS (wc_Sha3 , SHA3_224 );
136160
137161 DIGEST_KATS_ADD ("" , 0 ,
@@ -181,7 +205,7 @@ int test_wc_Sha3_224_KATs(void)
181205int test_wc_Sha3_256_KATs (void )
182206{
183207 EXPECT_DECLS ;
184- #ifdef WOLFSSL_SHA3
208+ #if defined( WOLFSSL_SHA3 ) && !defined( WOLFSSL_NOSHA3_256 )
185209 DIGEST_KATS_TEST_VARS (wc_Sha3 , SHA3_256 );
186210
187211 DIGEST_KATS_ADD ("" , 0 ,
@@ -231,7 +255,7 @@ int test_wc_Sha3_256_KATs(void)
231255int test_wc_Sha3_384_KATs (void )
232256{
233257 EXPECT_DECLS ;
234- #ifdef WOLFSSL_SHA3
258+ #if defined( WOLFSSL_SHA3 ) && !defined( WOLFSSL_NOSHA3_384 )
235259 DIGEST_KATS_TEST_VARS (wc_Sha3 , SHA3_384 );
236260
237261 DIGEST_KATS_ADD ("" , 0 ,
@@ -295,7 +319,7 @@ int test_wc_Sha3_384_KATs(void)
295319int test_wc_Sha3_512_KATs (void )
296320{
297321 EXPECT_DECLS ;
298- #ifdef WOLFSSL_SHA3
322+ #if defined( WOLFSSL_SHA3 ) && !defined( WOLFSSL_NOSHA3_512 )
299323 DIGEST_KATS_TEST_VARS (wc_Sha3 , SHA3_512 );
300324
301325 DIGEST_KATS_ADD ("" , 0 ,
@@ -373,23 +397,30 @@ int test_wc_Sha3_other(void)
373397{
374398 EXPECT_DECLS ;
375399#ifdef WOLFSSL_SHA3
400+ #ifndef WOLFSSL_NOSHA3_224
376401 DIGEST_ALT_OTHER_TEST (wc_Sha3 , Sha3_224 , SHA3_224 ,
377402 "\xbb\x4e\xb3\xf7\xfb\x7b\x50\xff"
378403 "\x3b\xf8\xb0\x53\x8c\x13\x40\xce"
379404 "\x0c\x43\x5f\xff\x6a\x08\x43\x87"
380405 "\x34\x9f\x7a\x4c" );
406+ #endif
407+ #ifndef WOLFSSL_NOSHA3_256
381408 DIGEST_ALT_OTHER_TEST (wc_Sha3 , Sha3_256 , SHA3_256 ,
382409 "\x78\xc4\x14\xa4\x5d\x85\x07\xf4"
383410 "\x48\x64\xe0\x5f\x73\x2c\x3b\x78"
384411 "\xce\x5a\x78\x45\x97\x0b\x29\xa8"
385412 "\xb4\x53\xed\x38\x19\xd2\x4e\xa9" );
413+ #endif
414+ #ifndef WOLFSSL_NOSHA3_384
386415 DIGEST_ALT_OTHER_TEST (wc_Sha3 , Sha3_384 , SHA3_384 ,
387416 "\x22\x29\x8c\x46\xa7\xf0\xf9\xc7"
388417 "\xa7\xaf\x66\x5d\x58\x88\xb3\x6c"
389418 "\xc2\x02\x43\x83\x71\x5f\xce\x12"
390419 "\x65\x1b\x11\xba\x1c\xde\x52\xdc"
391420 "\x6f\xde\x26\x43\xf1\x9f\xbe\xea"
392421 "\x5f\xd6\x25\x06\x7c\xad\x16\xed" );
422+ #endif
423+ #ifndef WOLFSSL_NOSHA3_512
393424 DIGEST_ALT_OTHER_TEST (wc_Sha3 , Sha3_512 , SHA3_512 ,
394425 "\xc3\xaf\x62\x06\x69\x92\xa1\x2f"
395426 "\xa5\x66\xcc\xcd\xec\x80\xdd\x27"
@@ -399,6 +430,7 @@ int test_wc_Sha3_other(void)
399430 "\x23\x42\x51\x5d\x8f\x07\x0d\x42"
400431 "\x04\x68\x84\xc4\x56\x24\x14\x65"
401432 "\x84\x28\xa9\x2f\x10\x35\x7b\x6d" );
433+ #endif
402434#endif
403435 return EXPECT_RESULT ();
404436}
@@ -407,6 +439,7 @@ int test_wc_Sha3_Copy(void)
407439{
408440 EXPECT_DECLS ;
409441#ifdef WOLFSSL_SHA3
442+ #ifndef WOLFSSL_NOSHA3_224
410443 DIGEST_ALT_COPY_TEST (wc_Sha3 , Sha3_224 , SHA3_224 ,
411444 "\x6b\x4e\x03\x42\x36\x67\xdb\xb7"
412445 "\x3b\x6e\x15\x45\x4f\x0e\xb1\xab"
@@ -416,6 +449,8 @@ int test_wc_Sha3_Copy(void)
416449 "\xd0\x92\x34\xee\x7d\x3c\x76\x6f"
417450 "\xc9\xa3\xa5\x16\x8d\x0c\x94\xad"
418451 "\x73\xb4\x6f\xdf" );
452+ #endif
453+ #ifndef WOLFSSL_NOSHA3_256
419454 DIGEST_ALT_COPY_TEST (wc_Sha3 , Sha3_256 , SHA3_256 ,
420455 "\xa7\xff\xc6\xf8\xbf\x1e\xd7\x66"
421456 "\x51\xc1\x47\x56\xa0\x61\xd6\x62"
@@ -425,6 +460,8 @@ int test_wc_Sha3_Copy(void)
425460 "\x04\x5c\x17\x2d\x6b\xd3\x90\xbd"
426461 "\x85\x5f\x08\x6e\x3e\x9d\x52\x5b"
427462 "\x46\xbf\xe2\x45\x11\x43\x15\x32" );
463+ #endif
464+ #ifndef WOLFSSL_NOSHA3_384
428465 DIGEST_ALT_COPY_TEST (wc_Sha3 , Sha3_384 , SHA3_384 ,
429466 "\x0c\x63\xa7\x5b\x84\x5e\x4f\x7d"
430467 "\x01\x10\x7d\x85\x2e\x4c\x24\x85"
@@ -438,6 +475,8 @@ int test_wc_Sha3_Copy(void)
438475 "\x96\xda\x7c\xf0\xe4\x9b\xe4\xb2"
439476 "\x98\xd8\x8c\xea\x92\x7a\xc7\xf5"
440477 "\x39\xf1\xed\xf2\x28\x37\x6d\x25" );
478+ #endif
479+ #ifndef WOLFSSL_NOSHA3_512
441480 DIGEST_ALT_COPY_TEST (wc_Sha3 , Sha3_512 , SHA3_512 ,
442481 "\xa6\x9f\x73\xcc\xa2\x3a\x9a\xc5"
443482 "\xc8\xb5\x67\xdc\x18\x5a\x75\x6e"
@@ -455,6 +494,7 @@ int test_wc_Sha3_Copy(void)
455494 "\x1a\x7e\xc5\x76\x47\xe3\x93\x40"
456495 "\x57\x34\x0b\x4c\xf4\x08\xd5\xa5"
457496 "\x65\x92\xf8\x27\x4e\xec\x53\xf0" );
497+ #endif
458498#endif
459499 return EXPECT_RESULT ();
460500}
@@ -463,6 +503,7 @@ int test_wc_Sha3_GetHash(void)
463503{
464504 EXPECT_DECLS ;
465505#ifdef WOLFSSL_SHA3
506+ #ifndef WOLFSSL_NOSHA3_224
466507 SHA3_GET_HASH_TEST (Sha3_224 , SHA3_224 ,
467508 "\x6b\x4e\x03\x42\x36\x67\xdb\xb7"
468509 "\x3b\x6e\x15\x45\x4f\x0e\xb1\xab"
@@ -472,6 +513,8 @@ int test_wc_Sha3_GetHash(void)
472513 "\xd0\x92\x34\xee\x7d\x3c\x76\x6f"
473514 "\xc9\xa3\xa5\x16\x8d\x0c\x94\xad"
474515 "\x73\xb4\x6f\xdf" );
516+ #endif
517+ #ifndef WOLFSSL_NOSHA3_256
475518 SHA3_GET_HASH_TEST (Sha3_256 , SHA3_256 ,
476519 "\xa7\xff\xc6\xf8\xbf\x1e\xd7\x66"
477520 "\x51\xc1\x47\x56\xa0\x61\xd6\x62"
@@ -481,6 +524,8 @@ int test_wc_Sha3_GetHash(void)
481524 "\x04\x5c\x17\x2d\x6b\xd3\x90\xbd"
482525 "\x85\x5f\x08\x6e\x3e\x9d\x52\x5b"
483526 "\x46\xbf\xe2\x45\x11\x43\x15\x32" );
527+ #endif
528+ #ifndef WOLFSSL_NOSHA3_384
484529 SHA3_GET_HASH_TEST (Sha3_384 , SHA3_384 ,
485530 "\x0c\x63\xa7\x5b\x84\x5e\x4f\x7d"
486531 "\x01\x10\x7d\x85\x2e\x4c\x24\x85"
@@ -494,6 +539,8 @@ int test_wc_Sha3_GetHash(void)
494539 "\x96\xda\x7c\xf0\xe4\x9b\xe4\xb2"
495540 "\x98\xd8\x8c\xea\x92\x7a\xc7\xf5"
496541 "\x39\xf1\xed\xf2\x28\x37\x6d\x25" );
542+ #endif
543+ #ifndef WOLFSSL_NOSHA3_512
497544 SHA3_GET_HASH_TEST (Sha3_512 , SHA3_512 ,
498545 "\xa6\x9f\x73\xcc\xa2\x3a\x9a\xc5"
499546 "\xc8\xb5\x67\xdc\x18\x5a\x75\x6e"
@@ -511,14 +558,16 @@ int test_wc_Sha3_GetHash(void)
511558 "\x1a\x7e\xc5\x76\x47\xe3\x93\x40"
512559 "\x57\x34\x0b\x4c\xf4\x08\xd5\xa5"
513560 "\x65\x92\xf8\x27\x4e\xec\x53\xf0" );
561+ #endif
514562#endif
515563 return EXPECT_RESULT ();
516564}
517565
518566int test_wc_Sha3_Flags (void )
519567{
520568 EXPECT_DECLS ;
521- #if defined(WOLFSSL_SHA3 ) && defined(WOLFSSL_HASH_FLAGS )
569+ #if defined(WOLFSSL_SHA3 ) && defined(WOLFSSL_HASH_FLAGS ) && \
570+ !defined(WOLFSSL_NOSHA3_256 )
522571 DIGEST_ALT_FLAGS_TEST (wc_Sha3 , Sha3 , Sha3_256 );
523572#endif
524573 return EXPECT_RESULT ();
0 commit comments