diff --git a/wolfcrypt/src/aes.c b/wolfcrypt/src/aes.c index b314b62dc..184838a6b 100644 --- a/wolfcrypt/src/aes.c +++ b/wolfcrypt/src/aes.c @@ -9914,9 +9914,6 @@ static WARN_UNUSED_RESULT int wc_AesFeedbackEncrypt( Aes* aes, byte* out, const byte* in, word32 sz, byte mode) { byte* tmp = NULL; -#ifdef WOLFSSL_AES_CFB - byte* reg = NULL; -#endif int ret = 0; word32 processed; @@ -9924,12 +9921,6 @@ static WARN_UNUSED_RESULT int wc_AesFeedbackEncrypt( return BAD_FUNC_ARG; } -#ifdef WOLFSSL_AES_CFB - if (aes->left && sz) { - reg = (byte*)aes->reg + AES_BLOCK_SIZE - aes->left; - } -#endif - /* consume any unused bytes left in aes->tmp */ processed = min(aes->left, sz); xorbufout(out, in, (byte*)aes->tmp + AES_BLOCK_SIZE - aes->left, processed); @@ -9980,14 +9971,11 @@ static WARN_UNUSED_RESULT int wc_AesFeedbackEncrypt( XMEMCPY(aes->reg, aes->tmp, AES_BLOCK_SIZE); } #endif - #ifdef WOLFSSL_AES_CFB - reg = (byte*)aes->reg; - #endif xorbufout(out, in, tmp, sz); #ifdef WOLFSSL_AES_CFB if (mode == AES_CFB_MODE) { - XMEMCPY(reg, out, sz); + XMEMCPY(aes->reg, out, sz); } #endif aes->left -= sz; diff --git a/wolfcrypt/src/chacha.c b/wolfcrypt/src/chacha.c index c6a47726d..91e6bf0e7 100644 --- a/wolfcrypt/src/chacha.c +++ b/wolfcrypt/src/chacha.c @@ -222,7 +222,9 @@ static WC_INLINE void wc_Chacha_wordtobyte(word32 x[CHACHA_CHUNK_WORDS], for (i = 0; i < CHACHA_CHUNK_WORDS; i++) { x[i] = PLUS(x[i], state[i]); +#ifdef BIG_ENDIAN_ORDER x[i] = LITTLE32(x[i]); +#endif } } diff --git a/wolfcrypt/src/sha.c b/wolfcrypt/src/sha.c index 71fae7c8e..1ffd6bd18 100644 --- a/wolfcrypt/src/sha.c +++ b/wolfcrypt/src/sha.c @@ -879,7 +879,11 @@ int wc_ShaFinal(wc_Sha* sha, byte* hash) XMEMCPY(hash, (byte *)&sha->digest[0], WC_SHA_DIGEST_SIZE); - ret = InitSha(sha); /* reset state */ + { + int initret = InitSha(sha); /* reset state */ + if (initret < 0) + ret = initret; + } return ret; }