From 45197ad33ee77f3773eaefe2395072fbdd9d978c Mon Sep 17 00:00:00 2001 From: Andy Polyakov Date: Sun, 8 Jul 2018 12:12:15 +0200 Subject: [PATCH] modes/ocb128.c: readability and formatting improvements. Reviewed-by: Richard Levitte (Merged from https://github.com/openssl/openssl/pull/6669) --- crypto/modes/ocb128.c | 20 +++++--------------- 1 file changed, 5 insertions(+), 15 deletions(-) diff --git a/crypto/modes/ocb128.c b/crypto/modes/ocb128.c index 72e6ea9b58..713b9aaf19 100644 --- a/crypto/modes/ocb128.c +++ b/crypto/modes/ocb128.c @@ -42,22 +42,13 @@ static u32 ocb_ntz(u64 n) static void ocb_block_lshift(const unsigned char *in, size_t shift, unsigned char *out) { - unsigned char shift_mask; int i; - unsigned char mask[15]; + unsigned char carry = 0, carry_next; - shift_mask = 0xff; - shift_mask <<= (8 - shift); for (i = 15; i >= 0; i--) { - if (i > 0) { - mask[i - 1] = in[i] & shift_mask; - mask[i - 1] >>= 8 - shift; - } - out[i] = in[i] << shift; - - if (i != 15) { - out[i] ^= mask[i]; - } + carry_next = in[i] >> (8 - shift); + out[i] = (in[i] << shift) | carry; + carry = carry_next; } } @@ -119,8 +110,7 @@ static OCB_BLOCK *ocb_lookup_l(OCB128_CONTEXT *ctx, size_t idx) * the index. */ ctx->max_l_index += (idx - ctx->max_l_index + 4) & ~3; - tmp_ptr = - OPENSSL_realloc(ctx->l, ctx->max_l_index * sizeof(OCB_BLOCK)); + tmp_ptr = OPENSSL_realloc(ctx->l, ctx->max_l_index * sizeof(OCB_BLOCK)); if (tmp_ptr == NULL) /* prevent ctx->l from being clobbered */ return NULL; ctx->l = tmp_ptr; -- 2.40.0