From 1855e10fa994a31e5da15dd5c5a76549578ca849 Mon Sep 17 00:00:00 2001
From: Voev <voev.kirill@gmail.com>
Date: Mon, 13 May 2019 18:03:58 +0300
Subject: [PATCH] =?utf8?q?=D0=9D=D0=B5=20=D1=83=D1=87=D0=B8=D1=82=D1=8B?=
 =?utf8?q?=D0=B2=D0=B0=D0=B5=D1=82=D1=81=D1=8F=20=D0=B7=D0=BD=D0=B0=D1=87?=
 =?utf8?q?=D0=B5=D0=BD=D0=B8=D0=B5=20carry?=
MIME-Version: 1.0
Content-Type: text/plain; charset=utf8
Content-Transfer-Encoding: 8bit

---
 gost_grasshopper_cipher.c | 7 +++----
 1 file changed, 3 insertions(+), 4 deletions(-)

diff --git a/gost_grasshopper_cipher.c b/gost_grasshopper_cipher.c
index 7ae50f5..df58097 100644
--- a/gost_grasshopper_cipher.c
+++ b/gost_grasshopper_cipher.c
@@ -771,7 +771,7 @@ int gost_grasshopper_cipher_ctl(EVP_CIPHER_CTX *ctx, int type, int arg,
 
           unsigned char adjusted_iv[16];
           unsigned char seq[8];
-          int j;
+          int j, carry;
           if (mode != EVP_CIPH_CTR_MODE)
             return -1;
 
@@ -799,10 +799,9 @@ int gost_grasshopper_cipher_ctl(EVP_CIPHER_CTX *ctx, int type, int arg,
                 (const unsigned char *)seq) > 0) {
             memset(adjusted_iv, 0, 16);
             memcpy(adjusted_iv, EVP_CIPHER_CTX_original_iv(ctx), 8);
-            for(j=7; j>=0; j--)
+            for(j=7,carry=0; j>=0; j--)
             {
-              int adj_byte, carry = 0;
-              adj_byte = adjusted_iv[j]+seq[j]+carry;
+              int adj_byte = adjusted_iv[j]+seq[j]+carry;
               carry = (adj_byte > 255) ? 1 : 0;
               adjusted_iv[j] = adj_byte & 0xFF;
             }
-- 
2.39.5