diff --git a/sys/crypto/rijndael/rijndael-api-fst.c b/sys/crypto/rijndael/rijndael-api-fst.c --- a/sys/crypto/rijndael/rijndael-api-fst.c +++ b/sys/crypto/rijndael/rijndael-api-fst.c @@ -388,7 +388,7 @@ /* last block */ rijndaelDecrypt(key->rk, key->Nr, input, block); padLen = block[15]; - if (padLen >= 16) { + if (padLen == 0 || padLen > 16) { return BAD_DATA; } for (i = 16 - padLen; i < 16; i++) {