diff --git a/wolfcrypt/src/pwdbased.c b/wolfcrypt/src/pwdbased.c index 5ca96e6b6..2515d789f 100644 --- a/wolfcrypt/src/pwdbased.c +++ b/wolfcrypt/src/pwdbased.c @@ -415,10 +415,10 @@ int wc_PKCS12_PBKDF_ex(byte* output, const byte* passwd, int passLen, dLen = v; sLen = v * ((saltLen + v - 1) / v); - if (passLen) - pLen = v * ((passLen + v - 1) / v); - else - pLen = 0; + + /* with passLen checked at the top of the function for >= 0 then passLen + * must be 1 or greater here and is always 'true' */ + pLen = v * ((passLen + v - 1) / v); iLen = sLen + pLen; totalLen = dLen + sLen + pLen;