correctly set invalid devId for when cryptoCb is on

but the user has opted to use software, or cmac is not available on for their
device. currently a devId of 0 is set which causes CRYPTOCB_UNAVAILABLE
This commit is contained in:
John Bland
2023-10-17 01:33:06 -04:00
parent bab01ca313
commit 53d80c0b7f

View File

@ -114,12 +114,13 @@ int wc_InitCmac_ex(Cmac* cmac, const byte* key, word32 keySz,
#endif #endif
XMEMSET(cmac, 0, sizeof(Cmac)); XMEMSET(cmac, 0, sizeof(Cmac));
/* set invalid devId regardless of cryptoCb */
cmac->devId = devId;
#ifdef WOLF_CRYPTO_CB #ifdef WOLF_CRYPTO_CB
#ifndef WOLF_CRYPTO_CB_FIND #ifndef WOLF_CRYPTO_CB_FIND
if (devId != INVALID_DEVID) if (devId != INVALID_DEVID)
#endif #endif
{ {
cmac->devId = devId;
cmac->devCtx = NULL; cmac->devCtx = NULL;
ret = wc_CryptoCb_Cmac(cmac, key, keySz, NULL, 0, NULL, NULL, ret = wc_CryptoCb_Cmac(cmac, key, keySz, NULL, 0, NULL, NULL,
@ -128,6 +129,7 @@ int wc_InitCmac_ex(Cmac* cmac, const byte* key, word32 keySz,
return ret; return ret;
/* fall-through when unavailable */ /* fall-through when unavailable */
} }
#else #else
(void)devId; (void)devId;
#endif #endif