summaryrefslogtreecommitdiff
path: root/crypto
diff options
context:
space:
mode:
authorappro <appro>2011-04-23 09:15:03 +0000
committerappro <appro>2011-04-23 09:15:03 +0000
commit3b81e224aba82bf99edafb6bd4a7eba6ba349b7e (patch)
treeacaf46aa82d89b4daa2ea15b5651d7c03e01b5c4 /crypto
parent8ed59563cffa03ba895177ea4dd3fb27965a92d8 (diff)
downloadopenssl-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.c4
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;