diff options
author | appro <appro> | 2011-04-23 09:15:03 +0000 |
---|---|---|
committer | appro <appro> | 2011-04-23 09:15:03 +0000 |
commit | 3b81e224aba82bf99edafb6bd4a7eba6ba349b7e (patch) | |
tree | acaf46aa82d89b4daa2ea15b5651d7c03e01b5c4 /crypto | |
parent | 8ed59563cffa03ba895177ea4dd3fb27965a92d8 (diff) | |
download | openssl-3b81e224aba82bf99edafb6bd4a7eba6ba349b7e.tar.gz |
xts128.c: fix bug introduced in commit#20704. Bug affected encryption of
vectors whose lenght was not multiples of 16 bytes.
Diffstat (limited to 'crypto')
-rw-r--r-- | crypto/modes/xts128.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/crypto/modes/xts128.c b/crypto/modes/xts128.c index ebdc5ea64..e7f164107 100644 --- a/crypto/modes/xts128.c +++ b/crypto/modes/xts128.c @@ -89,8 +89,8 @@ int CRYPTO_xts128_encrypt(const XTS128_CONTEXT *ctx, const unsigned char iv[16], scratch.u[1] ^= tweak.u[1]; memcpy(out,scratch.c,16); #else - ((u64*)out)[0] = scratch.u[0]^tweak.u[0]; - ((u64*)out)[1] = scratch.u[1]^tweak.u[1]; + ((u64*)out)[0] = scratch.u[0]^=tweak.u[0]; + ((u64*)out)[1] = scratch.u[1]^=tweak.u[1]; #endif inp += 16; out += 16; |