Skip to content

Commit 9775795

Browse files
committed
Add ability to skip load key verify test
1 parent 1413afb commit 9775795

1 file changed

Lines changed: 37 additions & 2 deletions

File tree

wolfcrypt/test/test.c

Lines changed: 37 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -57061,16 +57061,51 @@ WOLFSSL_TEST_SUBROUTINE wc_test_ret_t she_test(void)
5706157061
goto exit_SHE_Test;
5706257062
}
5706357063

57064-
#if !defined(NO_WC_SHE_LOADKEY) && \
57064+
#if !defined(NO_WC_SHE_LOADKEY) && !defined(NO_WC_SHE_LOADKEY_TEST) && \
5706557065
(defined(WOLF_CRYPTO_CB) || !defined(NO_WC_SHE_IMPORT_M123))
5706657066
/* ---- LoadKey_Verify ---- */
57067+
/* Override WC_TEST_SHE_LOADKEY_VERIFY to use a platform-specific variant.
57068+
* Platforms with hardware SHE (HSM/HSE) cannot use static test vectors
57069+
* because the UID is device-specific. Options:
57070+
*
57071+
* Default (no override): calls wc_SHE_LoadKey_Verify (no id/label)
57072+
*
57073+
* WC_TEST_SHE_LOADKEY_ID: byte array for wc_SHE_LoadKey_Verify_Id
57074+
* e.g. #define WC_TEST_SHE_LOADKEY_ID { 1, 0, 2, 0, 0, 0, 0 }
57075+
*
57076+
* WC_TEST_SHE_LOADKEY_LABEL: string for wc_SHE_LoadKey_Verify_Label
57077+
* e.g. #define WC_TEST_SHE_LOADKEY_LABEL "she_key_1"
57078+
*
57079+
* Define NO_WC_SHE_LOADKEY_TEST to skip this sub-test entirely.
57080+
*/
5706757081
XMEMSET(m4, 0, WC_SHE_M4_SZ);
5706857082
XMEMSET(m5, 0, WC_SHE_M5_SZ);
57083+
#if defined(WOLF_PRIVATE_KEY_ID) && defined(WC_TEST_SHE_LOADKEY_ID)
57084+
{
57085+
unsigned char sheLoadkeyId[] = WC_TEST_SHE_LOADKEY_ID;
57086+
ret = wc_SHE_LoadKey_Verify_Id(
57087+
sheLoadkeyId, (int)sizeof(sheLoadkeyId),
57088+
HEAP_HINT, devId,
57089+
expM1, WC_SHE_M1_SZ, expM2, WC_SHE_M2_SZ,
57090+
expM3, WC_SHE_M3_SZ,
57091+
m4, WC_SHE_M4_SZ, m5, WC_SHE_M5_SZ,
57092+
expM4, WC_SHE_M4_SZ, expM5, WC_SHE_M5_SZ);
57093+
}
57094+
#elif defined(WOLF_PRIVATE_KEY_ID) && defined(WC_TEST_SHE_LOADKEY_LABEL)
57095+
ret = wc_SHE_LoadKey_Verify_Label(
57096+
WC_TEST_SHE_LOADKEY_LABEL,
57097+
HEAP_HINT, devId,
57098+
expM1, WC_SHE_M1_SZ, expM2, WC_SHE_M2_SZ,
57099+
expM3, WC_SHE_M3_SZ,
57100+
m4, WC_SHE_M4_SZ, m5, WC_SHE_M5_SZ,
57101+
expM4, WC_SHE_M4_SZ, expM5, WC_SHE_M5_SZ);
57102+
#else
5706957103
ret = wc_SHE_LoadKey_Verify(HEAP_HINT, devId,
5707057104
expM1, WC_SHE_M1_SZ, expM2, WC_SHE_M2_SZ,
5707157105
expM3, WC_SHE_M3_SZ,
5707257106
m4, WC_SHE_M4_SZ, m5, WC_SHE_M5_SZ,
5707357107
expM4, WC_SHE_M4_SZ, expM5, WC_SHE_M5_SZ);
57108+
#endif
5707457109
if (devId == INVALID_DEVID) {
5707557110
if (ret != WC_NO_ERR_TRACE(BAD_FUNC_ARG)) {
5707657111
ret = WC_TEST_RET_ENC_EC(ret);
@@ -57088,7 +57123,7 @@ WOLFSSL_TEST_SUBROUTINE wc_test_ret_t she_test(void)
5708857123
}
5708957124
}
5709057125
ret = 0;
57091-
#endif /* !NO_WC_SHE_LOADKEY */
57126+
#endif /* !NO_WC_SHE_LOADKEY && !NO_WC_SHE_LOADKEY_TEST */
5709257127

5709357128
#if defined(WC_SHE_SW_DEFAULT) && defined(WOLF_CRYPTO_CB) && \
5709457129
!defined(NO_WC_SHE_GETUID) && !defined(NO_WC_SHE_GETCOUNTER)

0 commit comments

Comments
 (0)