projects
/
openssl.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
c9adde0
)
xts128.c: minor optimizaton.
author
Andy Polyakov
<appro@openssl.org>
Wed, 4 May 2011 20:57:43 +0000
(20:57 +0000)
committer
Andy Polyakov
<appro@openssl.org>
Wed, 4 May 2011 20:57:43 +0000
(20:57 +0000)
crypto/modes/xts128.c
patch
|
blob
|
history
diff --git
a/crypto/modes/xts128.c
b/crypto/modes/xts128.c
index e7f1641070f3b58fb201c12e999989ee4dc45fa8..9cf27a25e9607b67cfcd5b696b5cdbf1e9aae77f 100644
(file)
--- a/
crypto/modes/xts128.c
+++ b/
crypto/modes/xts128.c
@@
-107,14
+107,15
@@
int CRYPTO_xts128_encrypt(const XTS128_CONTEXT *ctx, const unsigned char iv[16],
tweak.u[1] = (tweak.u[1]<<1)|carry;
}
else {
tweak.u[1] = (tweak.u[1]<<1)|carry;
}
else {
-
unsigned int carry,
c;
+
size_t
c;
- for (carry=0,i=0;i<16;++i) {
- c = tweak.c[i];
- tweak.c[i] = (c<<1)|carry;
- carry = c>>7;
+ for (c=0,i=0;i<16;++i) {
+ /*+ substitutes for |, because c is 1 bit */
+ c += ((size_t)tweak.c[i])<<1;
+ tweak.c[i] = (u8)c;
+ c = c>>8;
}
}
- tweak.c[0] ^=
0x87&(0-carry
);
+ tweak.c[0] ^=
(u8)(0x87&(0-c)
);
}
}
if (enc) {
}
}
if (enc) {
@@
-142,14
+143,15
@@
int CRYPTO_xts128_encrypt(const XTS128_CONTEXT *ctx, const unsigned char iv[16],
tweak1.u[1] = (tweak.u[1]<<1)|carry;
}
else {
tweak1.u[1] = (tweak.u[1]<<1)|carry;
}
else {
-
unsigned int carry,
c;
+
size_t
c;
- for (carry=0,i=0;i<16;++i) {
- c = tweak.c[i];
- tweak1.c[i] = (c<<1)|carry;
- carry = c>>7;
+ for (c=0,i=0;i<16;++i) {
+ /*+ substitutes for |, because c is 1 bit */
+ c += ((size_t)tweak.c[i])<<1;
+ tweak1.c[i] = (u8)c;
+ c = c>>8;
}
}
- tweak1.c[0] ^=
0x87&(0-carry
);
+ tweak1.c[0] ^=
(u8)(0x87&(0-c)
);
}
#if defined(STRICT_ALIGNMENT)
memcpy(scratch.c,inp,16);
}
#if defined(STRICT_ALIGNMENT)
memcpy(scratch.c,inp,16);