diff --git a/crypto/modes/ctr128.c b/crypto/modes/ctr128.c index ee642c5863cd38fe21ddef6b4727c2e3047656d3..f90605785c3807962aa61b31ecab25c9d7d5d4b3 100644 --- a/crypto/modes/ctr128.c +++ b/crypto/modes/ctr128.c @@ -125,7 +125,8 @@ void CRYPTO_ctr128_encrypt(const unsigned char *in, unsigned char *out, n = *num; #if !defined(OPENSSL_SMALL_FOOTPRINT) - if (16%sizeof(size_t) == 0) do { /* always true actually */ + if (16%sizeof(size_t) == 0) { /* always true actually */ + do { while (n && len) { *(out++) = *(in++) ^ ecount_buf[n]; --len; @@ -157,7 +158,8 @@ void CRYPTO_ctr128_encrypt(const unsigned char *in, unsigned char *out, } *num = n; return; - } while(0); + } while(0); + } /* the rest would be commonly eliminated by x86* compiler */ #endif while (l