summaryrefslogtreecommitdiffstats
path: root/crypto
diff options
context:
space:
mode:
authorDr. Stephen Henson <steve@openssl.org>2010-07-09 17:26:04 +0000
committerDr. Stephen Henson <steve@openssl.org>2010-07-09 17:26:04 +0000
commit0852f90c300405c79c2af5c549e74d0d4a8f664c (patch)
treed117e6db14fdc882b1b44fe928a5afe5c42a3378 /crypto
parent27650016102187647c9ea04b8fed41188c3cc87e (diff)
PR: 2297
Submitted by: Antony, Benoy <bantony@ebay.com> Approved by: steve@openssl.org Fix bug in AES wrap code when t > 0xff.
Diffstat (limited to 'crypto')
-rw-r--r--crypto/aes/aes_wrap.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/crypto/aes/aes_wrap.c b/crypto/aes/aes_wrap.c
index 9feacd65d8..a9aebfe9b0 100644
--- a/crypto/aes/aes_wrap.c
+++ b/crypto/aes/aes_wrap.c
@@ -85,9 +85,9 @@ int AES_wrap_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(R, B + 8, 8);
}