Base64 decode: simplify local variables (n)

n was used for two different purposes. Give it a different name the second
time. This does not seem to change the generated code when compiling with
optimization for size or performance.

Signed-off-by: Gilles Peskine <Gilles.Peskine@arm.com>
This commit is contained in:
Gilles Peskine 2021-07-30 12:56:21 +02:00
parent 32e9530531
commit 231b67a6b2

View File

@ -202,6 +202,7 @@ int mbedtls_base64_decode( unsigned char *dst, size_t dlen, size_t *olen,
size_t i; /* index in source */
size_t n; /* number of digits or trailing = in source */
uint32_t x; /* value accumulator */
unsigned accumulated_digits = 0;
unsigned equals = 0;
int spaces_present = 0;
unsigned char *p;
@ -270,7 +271,7 @@ int mbedtls_base64_decode( unsigned char *dst, size_t dlen, size_t *olen,
}
equals = 0;
for( n = x = 0, p = dst; i > 0; i--, src++ )
for( x = 0, p = dst; i > 0; i--, src++ )
{
if( *src == '\r' || *src == '\n' || *src == ' ' )
continue;
@ -281,9 +282,9 @@ int mbedtls_base64_decode( unsigned char *dst, size_t dlen, size_t *olen,
else
x |= dec_value( *src );
if( ++n == 4 )
if( ++accumulated_digits == 4 )
{
n = 0;
accumulated_digits = 0;
*p++ = (unsigned char)( x >> 16 );
if( equals <= 1 ) *p++ = (unsigned char)( x >> 8 );
if( equals <= 0 ) *p++ = (unsigned char)( x );