diff options
Diffstat (limited to 'src/lib/libcrypto/modes/cbc128.c')
-rw-r--r-- | src/lib/libcrypto/modes/cbc128.c | 13 |
1 files changed, 7 insertions, 6 deletions
diff --git a/src/lib/libcrypto/modes/cbc128.c b/src/lib/libcrypto/modes/cbc128.c index 0e54f75470..e4920a93ac 100644 --- a/src/lib/libcrypto/modes/cbc128.c +++ b/src/lib/libcrypto/modes/cbc128.c | |||
@@ -59,8 +59,11 @@ | |||
59 | #endif | 59 | #endif |
60 | #include <assert.h> | 60 | #include <assert.h> |
61 | 61 | ||
62 | #ifndef STRICT_ALIGNMENT | 62 | #undef STRICT_ALIGNMENT |
63 | # define STRICT_ALIGNMENT 0 | 63 | #ifdef __STRICT_ALIGNMENT |
64 | #define STRICT_ALIGNMENT 1 | ||
65 | #else | ||
66 | #define STRICT_ALIGNMENT 0 | ||
64 | #endif | 67 | #endif |
65 | 68 | ||
66 | void CRYPTO_cbc128_encrypt(const unsigned char *in, unsigned char *out, | 69 | void CRYPTO_cbc128_encrypt(const unsigned char *in, unsigned char *out, |
@@ -136,8 +139,7 @@ void CRYPTO_cbc128_decrypt(const unsigned char *in, unsigned char *out, | |||
136 | in += 16; | 139 | in += 16; |
137 | out += 16; | 140 | out += 16; |
138 | } | 141 | } |
139 | } | 142 | } else if (16%sizeof(size_t) == 0) { /* always true */ |
140 | else if (16%sizeof(size_t) == 0) { /* always true */ | ||
141 | while (len>=16) { | 143 | while (len>=16) { |
142 | size_t *out_t=(size_t *)out, *iv_t=(size_t *)iv; | 144 | size_t *out_t=(size_t *)out, *iv_t=(size_t *)iv; |
143 | 145 | ||
@@ -166,8 +168,7 @@ void CRYPTO_cbc128_decrypt(const unsigned char *in, unsigned char *out, | |||
166 | in += 16; | 168 | in += 16; |
167 | out += 16; | 169 | out += 16; |
168 | } | 170 | } |
169 | } | 171 | } else if (16%sizeof(size_t) == 0) { /* always true */ |
170 | else if (16%sizeof(size_t) == 0) { /* always true */ | ||
171 | while (len>=16) { | 172 | while (len>=16) { |
172 | size_t c, *out_t=(size_t *)out, *ivec_t=(size_t *)ivec; | 173 | size_t c, *out_t=(size_t *)out, *ivec_t=(size_t *)ivec; |
173 | const size_t *in_t=(const size_t *)in; | 174 | const size_t *in_t=(const size_t *)in; |