From f0041852b5e349bf1ceabae9cb2ba800c293da6c Mon Sep 17 00:00:00 2001 From: Daniel Pouzzner Date: Mon, 24 Jan 2022 13:34:22 -0600 Subject: [PATCH] aes.c: add error catching and percolation for wc_AesGetKeySize() on FREESCALE_LTC in wc_AesEncrypt(), wc_AesDecrypt(), and wc_AesCtrEncrypt(). --- wolfcrypt/src/aes.c | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/wolfcrypt/src/aes.c b/wolfcrypt/src/aes.c index e2cdd28cc..4d5a5f95f 100644 --- a/wolfcrypt/src/aes.c +++ b/wolfcrypt/src/aes.c @@ -538,7 +538,9 @@ block cipher mechanism that uses n-bit binary string parameter key with 128-bits { word32 keySize = 0; byte* key = (byte*)aes->key; - wc_AesGetKeySize(aes, &keySize); + int ret = wc_AesGetKeySize(aes, &keySize); + if (ret != 0) + return ret; if (wolfSSL_CryptHwMutexLock() == 0) { LTC_AES_EncryptEcb(LTC_BASE, inBlock, outBlock, AES_BLOCK_SIZE, @@ -553,7 +555,9 @@ block cipher mechanism that uses n-bit binary string parameter key with 128-bits { word32 keySize = 0; byte* key = (byte*)aes->key; - wc_AesGetKeySize(aes, &keySize); + int ret = wc_AesGetKeySize(aes, &keySize); + if (ret != 0) + return ret; if (wolfSSL_CryptHwMutexLock() == 0) { LTC_AES_DecryptEcb(LTC_BASE, inBlock, outBlock, AES_BLOCK_SIZE, @@ -4311,7 +4315,9 @@ int wc_AesSetIV(Aes* aes, const byte* iv) iv = (byte*)aes->reg; enc_key = (byte*)aes->key; - wc_AesGetKeySize(aes, &keySize); + ret = wc_AesGetKeySize(aes, &keySize); + if (ret != 0) + return ret; ret = wolfSSL_CryptHwMutexLock(); if (ret != 0)