mirror of
https://github.com/yuzu-emu/mbedtls.git
synced 2025-06-01 13:00:31 +00:00
Coverity fixes, check hmac return values
This commit is contained in:
parent
7d2434fac2
commit
8f7e36fc98
|
@ -791,8 +791,8 @@ int tls_prf_generic( mbedtls_md_type_t md_type,
|
||||||
return( MBEDTLS_ERR_SSL_BAD_INPUT_DATA );
|
return( MBEDTLS_ERR_SSL_BAD_INPUT_DATA );
|
||||||
|
|
||||||
nb = strlen( label );
|
nb = strlen( label );
|
||||||
mbedtls_platform_memcpy( tmp + md_len, label, nb );
|
(void)mbedtls_platform_memcpy( tmp + md_len, label, nb );
|
||||||
mbedtls_platform_memcpy( tmp + md_len + nb, random, rlen );
|
(void)mbedtls_platform_memcpy( tmp + md_len + nb, random, rlen );
|
||||||
nb += rlen;
|
nb += rlen;
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
@ -801,19 +801,28 @@ int tls_prf_generic( mbedtls_md_type_t md_type,
|
||||||
if ( ( ret = mbedtls_md_setup( &md_ctx, md_info, 1 ) ) != 0 )
|
if ( ( ret = mbedtls_md_setup( &md_ctx, md_info, 1 ) ) != 0 )
|
||||||
return( ret );
|
return( ret );
|
||||||
|
|
||||||
mbedtls_md_hmac_starts( &md_ctx, secret, slen );
|
if ( ( ret = mbedtls_md_hmac_starts( &md_ctx, secret, slen ) ) != 0 )
|
||||||
mbedtls_md_hmac_update( &md_ctx, tmp + md_len, nb );
|
return( ret );
|
||||||
mbedtls_md_hmac_finish( &md_ctx, tmp );
|
if ( ( ret = mbedtls_md_hmac_update( &md_ctx, tmp + md_len, nb ) ) != 0 )
|
||||||
|
return( ret );
|
||||||
|
if ( ( ret = mbedtls_md_hmac_finish( &md_ctx, tmp ) ) != 0 )
|
||||||
|
return( ret );
|
||||||
|
|
||||||
for( i = 0; i < dlen; i += md_len )
|
for( i = 0; i < dlen; i += md_len )
|
||||||
{
|
{
|
||||||
mbedtls_md_hmac_reset ( &md_ctx );
|
if ( ( ret = mbedtls_md_hmac_reset ( &md_ctx ) ) != 0 )
|
||||||
mbedtls_md_hmac_update( &md_ctx, tmp, md_len + nb );
|
return( ret );
|
||||||
mbedtls_md_hmac_finish( &md_ctx, h_i );
|
if ( ( ret = mbedtls_md_hmac_update( &md_ctx, tmp, md_len + nb ) ) != 0 )
|
||||||
|
return( ret );
|
||||||
|
if ( ( ret = mbedtls_md_hmac_finish( &md_ctx, h_i ) ) != 0 )
|
||||||
|
return( ret );
|
||||||
|
|
||||||
mbedtls_md_hmac_reset ( &md_ctx );
|
if ( ( ret = mbedtls_md_hmac_reset ( &md_ctx ) ) != 0 )
|
||||||
mbedtls_md_hmac_update( &md_ctx, tmp, md_len );
|
return( ret );
|
||||||
mbedtls_md_hmac_finish( &md_ctx, tmp );
|
if ( ( ret = mbedtls_md_hmac_update( &md_ctx, tmp, md_len ) ) != 0 )
|
||||||
|
return( ret );
|
||||||
|
if ( ( ret = mbedtls_md_hmac_finish( &md_ctx, tmp ) ) != 0 )
|
||||||
|
return( ret );
|
||||||
|
|
||||||
k = ( i + md_len > dlen ) ? dlen % md_len : md_len;
|
k = ( i + md_len > dlen ) ? dlen % md_len : md_len;
|
||||||
|
|
||||||
|
@ -823,8 +832,8 @@ int tls_prf_generic( mbedtls_md_type_t md_type,
|
||||||
|
|
||||||
mbedtls_md_free( &md_ctx );
|
mbedtls_md_free( &md_ctx );
|
||||||
|
|
||||||
mbedtls_platform_zeroize( tmp, sizeof( tmp ) );
|
(void)mbedtls_platform_zeroize( tmp, sizeof( tmp ) );
|
||||||
mbedtls_platform_zeroize( h_i, sizeof( h_i ) );
|
(void)mbedtls_platform_zeroize( h_i, sizeof( h_i ) );
|
||||||
|
|
||||||
return( 0 );
|
return( 0 );
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue