From 5f4d499df02f9a9201a764aa98be00966e81d213 Mon Sep 17 00:00:00 2001 From: Juliusz Sosinowicz Date: Fri, 6 Mar 2026 10:15:48 +0100 Subject: [PATCH] Don't declare WC_ALLOC_DO_ON_FAILURE by default --- tests/api/test_aes.c | 2 ++ tests/api/test_chacha.c | 13 +++++++++---- tests/api/test_rsa.c | 2 ++ wolfcrypt/test/test.c | 2 ++ wolfssl/wolfcrypt/types.h | 3 --- 5 files changed, 15 insertions(+), 7 deletions(-) diff --git a/tests/api/test_aes.c b/tests/api/test_aes.c index 5b11c704d9..680dfb7229 100644 --- a/tests/api/test_aes.c +++ b/tests/api/test_aes.c @@ -34,6 +34,8 @@ #include #include +#define WC_ALLOC_DO_ON_FAILURE() WC_DO_NOTHING + /******************************************************************************* * AES ******************************************************************************/ diff --git a/tests/api/test_chacha.c b/tests/api/test_chacha.c index 9aa07b242e..6b79867876 100644 --- a/tests/api/test_chacha.c +++ b/tests/api/test_chacha.c @@ -334,8 +334,10 @@ int test_wc_Chacha_Process_Chunking(void) 0x0c, 0xb3, 0xc9, 0x39, 0x0f, 0x1f, 0x51, 0x9d }; - WC_ALLOC_VAR(plain, byte, CHACHA_LEN, NULL); - WC_ALLOC_VAR(cipher, byte, CHACHA_LEN, NULL); + WC_ALLOC_VAR_EX(plain, byte, CHACHA_LEN, NULL, DYNAMIC_TYPE_TMP_BUFFER, + ExpectNotNull(plain); goto cleanup); + WC_ALLOC_VAR_EX(cipher, byte, CHACHA_LEN, NULL, DYNAMIC_TYPE_TMP_BUFFER, + ExpectNotNull(cipher); goto cleanup); XMEMSET(plain, 0xa5, CHACHA_LEN); for (i = 0; i < (int)sizeof(key); i++) { @@ -360,8 +362,11 @@ int test_wc_Chacha_Process_Chunking(void) ExpectBufEQ(cipher, expected, (int)sizeof(expected)); } - WC_FREE_VAR(plain, NULL); - WC_FREE_VAR(cipher, NULL); +#ifdef WC_DECLARE_VAR_IS_HEAP_ALLOC +cleanup: +#endif + WC_FREE_VAR_EX(plain, NULL, DYNAMIC_TYPE_TMP_BUFFER); + WC_FREE_VAR_EX(cipher, NULL, DYNAMIC_TYPE_TMP_BUFFER); #endif return EXPECT_RESULT(); } /* END test_wc_Chacha_Process */ diff --git a/tests/api/test_rsa.c b/tests/api/test_rsa.c index 862af44d1c..9897efc93d 100644 --- a/tests/api/test_rsa.c +++ b/tests/api/test_rsa.c @@ -33,6 +33,8 @@ #include #include +#define WC_ALLOC_DO_ON_FAILURE() WC_DO_NOTHING + /* * Testing wc_Init RsaKey() */ diff --git a/wolfcrypt/test/test.c b/wolfcrypt/test/test.c index 6ee466ef02..ed21cf5157 100644 --- a/wolfcrypt/test/test.c +++ b/wolfcrypt/test/test.c @@ -1872,6 +1872,8 @@ WOLFSSL_TEST_SUBROUTINE wc_test_ret_t nist_sp80056c_twostep_cmac(void) } #endif +#define WC_ALLOC_DO_ON_FAILURE() WC_DO_NOTHING + #ifdef TEST_ALWAYS_RUN_TO_END #define TEST_FAIL(msg, retval) do { last_failed_test_ret = (retval); wc_test_render_error_message(msg, retval); } while (0) #elif !defined(TEST_FAIL) diff --git a/wolfssl/wolfcrypt/types.h b/wolfssl/wolfcrypt/types.h index af7d6b6224..2cabf7fda9 100644 --- a/wolfssl/wolfcrypt/types.h +++ b/wolfssl/wolfcrypt/types.h @@ -808,9 +808,6 @@ enum { #include /* declare/free variable handling for async and smallstack */ -#ifndef WC_ALLOC_DO_ON_FAILURE - #define WC_ALLOC_DO_ON_FAILURE() WC_DO_NOTHING -#endif #define WC_DECLARE_HEAP_ARRAY(VAR_NAME, VAR_TYPE, VAR_ITEMS, VAR_SIZE, HEAP) \ VAR_TYPE* VAR_NAME[VAR_ITEMS] = { NULL, }; \