diff options
Diffstat (limited to '')
| -rw-r--r-- | src/lib/libcrypto/modes/ctr128.c | 19 |
1 files changed, 9 insertions, 10 deletions
diff --git a/src/lib/libcrypto/modes/ctr128.c b/src/lib/libcrypto/modes/ctr128.c index 7fd0223701..23979d64f1 100644 --- a/src/lib/libcrypto/modes/ctr128.c +++ b/src/lib/libcrypto/modes/ctr128.c | |||
| @@ -1,4 +1,4 @@ | |||
| 1 | /* $OpenBSD: ctr128.c,v 1.6 2015/02/10 09:46:30 miod Exp $ */ | 1 | /* $OpenBSD: ctr128.c,v 1.7 2017/08/13 17:46:24 bcook Exp $ */ |
| 2 | /* ==================================================================== | 2 | /* ==================================================================== |
| 3 | * Copyright (c) 2008 The OpenSSL Project. All rights reserved. | 3 | * Copyright (c) 2008 The OpenSSL Project. All rights reserved. |
| 4 | * | 4 | * |
| @@ -81,22 +81,21 @@ static void ctr128_inc(unsigned char *counter) { | |||
| 81 | static void | 81 | static void |
| 82 | ctr128_inc_aligned(unsigned char *counter) | 82 | ctr128_inc_aligned(unsigned char *counter) |
| 83 | { | 83 | { |
| 84 | size_t *data,c,n; | 84 | #if BYTE_ORDER == LITTLE_ENDIAN |
| 85 | 85 | ctr128_inc(counter); | |
| 86 | if (BYTE_ORDER == LITTLE_ENDIAN) { | 86 | #else |
| 87 | ctr128_inc(counter); | 87 | size_t *data, c, n; |
| 88 | return; | ||
| 89 | } | ||
| 90 | |||
| 91 | data = (size_t *)counter; | 88 | data = (size_t *)counter; |
| 92 | n = 16/sizeof(size_t); | 89 | n = 16 / sizeof(size_t); |
| 93 | do { | 90 | do { |
| 94 | --n; | 91 | --n; |
| 95 | c = data[n]; | 92 | c = data[n]; |
| 96 | ++c; | 93 | ++c; |
| 97 | data[n] = c; | 94 | data[n] = c; |
| 98 | if (c) return; | 95 | if (c) |
| 96 | return; | ||
| 99 | } while (n); | 97 | } while (n); |
| 98 | #endif | ||
| 100 | } | 99 | } |
| 101 | #endif | 100 | #endif |
| 102 | 101 | ||
