From: Dr. Stephen Henson Date: Mon, 30 Aug 2010 23:58:47 +0000 (+0000) Subject: fix bug in AES_unwrap() X-Git-Tag: OpenSSL_1_0_1-beta1~465 X-Git-Url: https://git.librecmc.org/?a=commitdiff_plain;h=6f0d9950f35dd5c1de95b9c365c6fb353d5e1d0e;p=oweals%2Fopenssl.git fix bug in AES_unwrap() --- diff --git a/crypto/aes/aes_wrap.c b/crypto/aes/aes_wrap.c index a9aebfe9b0..e2d73d37ce 100644 --- a/crypto/aes/aes_wrap.c +++ b/crypto/aes/aes_wrap.c @@ -119,9 +119,9 @@ int AES_unwrap_key(AES_KEY *key, const unsigned char *iv, A[7] ^= (unsigned char)(t & 0xff); if (t > 0xff) { - A[6] ^= (unsigned char)((t & 0xff) >> 8); - A[5] ^= (unsigned char)((t & 0xff) >> 16); - A[4] ^= (unsigned char)((t & 0xff) >> 24); + A[6] ^= (unsigned char)((t >> 8) & 0xff); + A[5] ^= (unsigned char)((t >> 16) & 0xff); + A[4] ^= (unsigned char)((t >> 24) & 0xff); } memcpy(B + 8, R, 8); AES_decrypt(B, B, key);