Skip to content

Commit d555c1a

Browse files
authored
Merge pull request #9619 from rlm2002/coverity
20260106 Coverity fixes
2 parents f8b5352 + 6090ddb commit d555c1a

2 files changed

Lines changed: 16 additions & 7 deletions

File tree

wolfcrypt/test/test.c

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -7454,7 +7454,7 @@ WOLFSSL_TEST_SUBROUTINE wc_test_ret_t hmac_md5_test(void)
74547454

74557455
XMEMSET(&hmac, 0, sizeof(hmac));
74567456
#if !defined(HAVE_SELFTEST) && (!defined(HAVE_FIPS) || FIPS_VERSION3_GT(7,0,0))
7457-
WC_ALLOC_VAR_EX(hmac_copy, Hmac, 1, HEAP_HINT, DYNAMIC_TYPE_TMP_BUFFER,
7457+
WC_CALLOC_VAR_EX(hmac_copy, Hmac, 1, HEAP_HINT, DYNAMIC_TYPE_TMP_BUFFER,
74587458
return WC_TEST_RET_ENC_EC(MEMORY_E));
74597459
#endif
74607460

@@ -7599,7 +7599,7 @@ WOLFSSL_TEST_SUBROUTINE wc_test_ret_t hmac_sha_test(void)
75997599

76007600
XMEMSET(&hmac, 0, sizeof(hmac));
76017601
#if !defined(HAVE_SELFTEST) && (!defined(HAVE_FIPS) || FIPS_VERSION3_GT(7,0,0))
7602-
WC_ALLOC_VAR_EX(hmac_copy, Hmac, 1, HEAP_HINT, DYNAMIC_TYPE_TMP_BUFFER,
7602+
WC_CALLOC_VAR_EX(hmac_copy, Hmac, 1, HEAP_HINT, DYNAMIC_TYPE_TMP_BUFFER,
76037603
return WC_TEST_RET_ENC_EC(MEMORY_E));
76047604
#endif
76057605

@@ -7750,7 +7750,7 @@ WOLFSSL_TEST_SUBROUTINE wc_test_ret_t hmac_sha224_test(void)
77507750

77517751
XMEMSET(&hmac, 0, sizeof(hmac));
77527752
#if !defined(HAVE_SELFTEST) && (!defined(HAVE_FIPS) || FIPS_VERSION3_GT(7,0,0))
7753-
WC_ALLOC_VAR_EX(hmac_copy, Hmac, 1, HEAP_HINT, DYNAMIC_TYPE_TMP_BUFFER,
7753+
WC_CALLOC_VAR_EX(hmac_copy, Hmac, 1, HEAP_HINT, DYNAMIC_TYPE_TMP_BUFFER,
77547754
return WC_TEST_RET_ENC_EC(MEMORY_E));
77557755
#endif
77567756

@@ -7907,7 +7907,7 @@ WOLFSSL_TEST_SUBROUTINE wc_test_ret_t hmac_sha256_test(void)
79077907

79087908
XMEMSET(&hmac, 0, sizeof(hmac));
79097909
#if !defined(HAVE_SELFTEST) && (!defined(HAVE_FIPS) || FIPS_VERSION3_GT(7,0,0))
7910-
WC_ALLOC_VAR_EX(hmac_copy, Hmac, 1, HEAP_HINT, DYNAMIC_TYPE_TMP_BUFFER,
7910+
WC_CALLOC_VAR_EX(hmac_copy, Hmac, 1, HEAP_HINT, DYNAMIC_TYPE_TMP_BUFFER,
79117911
return WC_TEST_RET_ENC_EC(MEMORY_E));
79127912
#endif
79137913

@@ -8073,7 +8073,7 @@ WOLFSSL_TEST_SUBROUTINE wc_test_ret_t hmac_sha384_test(void)
80738073

80748074
XMEMSET(&hmac, 0, sizeof(hmac));
80758075
#if !defined(HAVE_SELFTEST) && (!defined(HAVE_FIPS) || FIPS_VERSION3_GT(7,0,0))
8076-
WC_ALLOC_VAR_EX(hmac_copy, Hmac, 1, HEAP_HINT, DYNAMIC_TYPE_TMP_BUFFER,
8076+
WC_CALLOC_VAR_EX(hmac_copy, Hmac, 1, HEAP_HINT, DYNAMIC_TYPE_TMP_BUFFER,
80778077
return WC_TEST_RET_ENC_EC(MEMORY_E));
80788078
#endif
80798079

@@ -8228,7 +8228,7 @@ WOLFSSL_TEST_SUBROUTINE wc_test_ret_t hmac_sha512_test(void)
82288228

82298229
XMEMSET(&hmac, 0, sizeof(hmac));
82308230
#if !defined(HAVE_SELFTEST) && (!defined(HAVE_FIPS) || FIPS_VERSION3_GT(7,0,0))
8231-
WC_ALLOC_VAR_EX(hmac_copy, Hmac, 1, HEAP_HINT, DYNAMIC_TYPE_TMP_BUFFER,
8231+
WC_CALLOC_VAR_EX(hmac_copy, Hmac, 1, HEAP_HINT, DYNAMIC_TYPE_TMP_BUFFER,
82328232
return WC_TEST_RET_ENC_EC(MEMORY_E));
82338233
#endif
82348234

@@ -8440,7 +8440,7 @@ WOLFSSL_TEST_SUBROUTINE wc_test_ret_t hmac_sha3_test(void)
84408440

84418441
XMEMSET(&hmac, 0, sizeof(hmac));
84428442
#if !defined(HAVE_SELFTEST) && (!defined(HAVE_FIPS) || FIPS_VERSION3_GT(7,0,0))
8443-
WC_ALLOC_VAR_EX(hmac_copy, Hmac, 1, HEAP_HINT, DYNAMIC_TYPE_TMP_BUFFER,
8443+
WC_CALLOC_VAR_EX(hmac_copy, Hmac, 1, HEAP_HINT, DYNAMIC_TYPE_TMP_BUFFER,
84448444
return WC_TEST_RET_ENC_EC(MEMORY_E));
84458445
#endif
84468446

wolfssl/wolfcrypt/types.h

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -876,6 +876,13 @@ enum {
876876
ONFAIL; \
877877
} \
878878
} while (0)
879+
#define WC_CALLOC_VAR_EX(VAR_NAME, VAR_TYPE, VAR_SIZE, HEAP, TY, ONFAIL)\
880+
do { \
881+
WC_ALLOC_VAR_EX(VAR_NAME, VAR_TYPE, VAR_SIZE, HEAP, TY, ONFAIL);\
882+
if ((VAR_NAME) != NULL) { \
883+
XMEMSET(VAR_NAME, 0, sizeof(VAR_TYPE) * (VAR_SIZE)); \
884+
} \
885+
} while (0)
879886
#define WC_CALLOC_VAR(VAR_NAME, VAR_TYPE, VAR_SIZE, HEAP) \
880887
do { \
881888
WC_ALLOC_VAR(VAR_NAME, VAR_TYPE, VAR_SIZE, HEAP); \
@@ -906,6 +913,8 @@ enum {
906913
#define WC_VAR_OK(VAR_NAME) 1
907914
#define WC_CALLOC_VAR(VAR_NAME, VAR_TYPE, VAR_SIZE, HEAP) \
908915
XMEMSET(VAR_NAME, 0, sizeof(var))
916+
#define WC_CALLOC_VAR_EX(VAR_NAME, VAR_TYPE, VAR_SIZE, HEAP, TY, ONFAIL)\
917+
WC_DO_NOTHING
909918
#define WC_FREE_VAR(VAR_NAME, HEAP) WC_DO_NOTHING \
910919
/* nothing to free, its stack */
911920
#define WC_FREE_VAR_EX(VAR_NAME, HEAP, TYPE) WC_DO_NOTHING

0 commit comments

Comments
 (0)