From: Matt Caswell Date: Wed, 25 Jan 2017 09:26:35 +0000 (+0000) Subject: Adjust in and in_len instead of donelen X-Git-Tag: OpenSSL_1_1_0d~8 X-Git-Url: https://git.librecmc.org/?a=commitdiff_plain;h=38a041a092fe50c5a9c76ea4f21be89ed086a8de;p=oweals%2Fopenssl.git Adjust in and in_len instead of donelen Don't use the temp variable donelen in the non-aad fragmented code path. Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/2275) (cherry picked from commit ef055ec536a3c6e698dd9f45b41d57a32366b4fa) --- diff --git a/test/evp_test.c b/test/evp_test.c index 3a7205bc2f..02ae0a5b80 100644 --- a/test/evp_test.c +++ b/test/evp_test.c @@ -1012,7 +1012,6 @@ static int cipher_test_enc(struct evp_test *t, int enc, EVP_CIPHER_CTX_set_padding(ctx, 0); err = "CIPHERUPDATE_ERROR"; tmplen = 0; - donelen = 0; if (!frag) { /* We supply the data all in one go */ if (!EVP_CipherUpdate(ctx, tmp + out_misalign, &tmplen, in, in_len)) @@ -1023,18 +1022,20 @@ static int cipher_test_enc(struct evp_test *t, int enc, if (!EVP_CipherUpdate(ctx, tmp + out_misalign, &chunklen, in, 1)) goto err; tmplen += chunklen; - donelen = 1; + in++; + in_len--; } - if (in_len > 2) { + if (in_len > 1) { if (!EVP_CipherUpdate(ctx, tmp + out_misalign + tmplen, &chunklen, - in + donelen, in_len - 2)) + in, in_len - 1)) goto err; tmplen += chunklen; - donelen += in_len - 2; + in += in_len - 1; + in_len = 1; } - if (in_len > 1 ) { + if (in_len > 0 ) { if (!EVP_CipherUpdate(ctx, tmp + out_misalign + tmplen, &chunklen, - in + donelen, 1)) + in, 1)) goto err; tmplen += chunklen; }