Sanity check lengths for AES wrap algorithm.
[openssl.git] / crypto / modes / wrap128.c
index 18785320f29ffa9a320ff400151f8b5ee58088bd..c6c14cdaaa06b9845947343543a773c6cd8afafa 100644 (file)
@@ -106,7 +106,7 @@ size_t CRYPTO_128_unwrap(void *key, const unsigned char *iv,
        unsigned char *A, B[16], *R;
        size_t i, j, t;
        inlen -= 8;
-       if ((inlen & 0x7) || (inlen < 8) || (inlen > CRYPTO128_WRAP_MAX))
+       if ((inlen & 0x7) || (inlen < 16) || (inlen > CRYPTO128_WRAP_MAX))
                return 0;
        A = B;
        t =  6 * (inlen >> 3);