Skip to content

Commit 1297a85

Browse files
committed
wolfcrypt/test/test.c:
* skip pkcs12_test() if NO_SHA; * sha3_224_test(): fix error-path leak and possible uninited-read of shaCopy.
1 parent fe93ec8 commit 1297a85

1 file changed

Lines changed: 8 additions & 5 deletions

File tree

wolfcrypt/test/test.c

Lines changed: 8 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -698,7 +698,7 @@ WOLFSSL_TEST_SUBROUTINE wc_test_ret_t pwdbased_test(void);
698698
#if defined(USE_CERT_BUFFERS_2048) && \
699699
defined(HAVE_PKCS12) && \
700700
!defined(NO_ASN) && !defined(NO_PWDBASED) && !defined(NO_HMAC) && \
701-
!defined(NO_CERTS) && !defined(NO_DES3)
701+
!defined(NO_CERTS) && !defined(NO_DES3) && !defined(NO_SHA)
702702
WOLFSSL_TEST_SUBROUTINE wc_test_ret_t pkcs12_test(void);
703703
#endif
704704
WOLFSSL_TEST_SUBROUTINE wc_test_ret_t ripemd_test(void);
@@ -2648,7 +2648,7 @@ options: [-s max_relative_stack_bytes] [-m max_relative_heap_memory_bytes]\n\
26482648
#if defined(USE_CERT_BUFFERS_2048) && \
26492649
defined(HAVE_PKCS12) && \
26502650
!defined(NO_ASN) && !defined(NO_PWDBASED) && !defined(NO_HMAC) && \
2651-
!defined(NO_CERTS) && !defined(NO_DES3)
2651+
!defined(NO_CERTS) && !defined(NO_DES3) && !defined(NO_SHA)
26522652
if ( (ret = pkcs12_test()) != 0)
26532653
TEST_FAIL("PKCS12 test failed!\n", ret);
26542654
else
@@ -6023,6 +6023,7 @@ static wc_test_ret_t sha3_224_test(void)
60236023
WC_ALLOC_VAR(shaCopy, wc_Sha3, 1, HEAP_HINT);
60246024
if (!WC_VAR_OK(shaCopy))
60256025
return WC_TEST_RET_ENC_EC(MEMORY_E);
6026+
XMEMSET(shaCopy, 0, sizeof(*shaCopy));
60266027

60276028
a.input = "";
60286029
a.output = "\x6b\x4e\x03\x42\x36\x67\xdb\xb7\x3b\x6e\x15\x45\x4f\x0e\xb1"
@@ -6047,8 +6048,10 @@ static wc_test_ret_t sha3_224_test(void)
60476048
test_sha[2] = c;
60486049

60496050
ret = wc_InitSha3_224(&sha, HEAP_HINT, devId);
6050-
if (ret != 0)
6051-
return WC_TEST_RET_ENC_EC(ret);
6051+
if (ret != 0) {
6052+
XMEMSET(&sha, 0, sizeof(sha));
6053+
ERROR_OUT(WC_TEST_RET_ENC_EC(ret), exit);
6054+
}
60526055

60536056
for (i = 0; i < times; ++i) {
60546057
ret = wc_Sha3_224_Update(&sha, (byte*)test_sha[i].input,
@@ -30466,7 +30469,7 @@ WOLFSSL_TEST_SUBROUTINE wc_test_ret_t pwdbased_test(void)
3046630469
#if defined(USE_CERT_BUFFERS_2048) && \
3046730470
defined(HAVE_PKCS12) && \
3046830471
!defined(NO_ASN) && !defined(NO_PWDBASED) && !defined(NO_HMAC) && \
30469-
!defined(NO_CERTS) && !defined(NO_DES3)
30472+
!defined(NO_CERTS) && !defined(NO_DES3) && !defined(NO_SHA)
3047030473
WOLFSSL_TEST_SUBROUTINE wc_test_ret_t pkcs12_test(void)
3047130474
{
3047230475
wc_test_ret_t ret = 0;

0 commit comments

Comments
 (0)