Skip to content

Commit eab79b0

Browse files
committed
Initialise some variables
1 parent 21c809d commit eab79b0

File tree

2 files changed

+9
-9
lines changed

2 files changed

+9
-9
lines changed

components/security/mbedtls/src/ssl_cli.c

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -342,7 +342,7 @@ static void ssl_write_supported_point_formats_ext( mbedtls_ssl_context *ssl,
342342

343343
*olen = 6;
344344
}
345-
#endif /* MBEDTLS_ECDH_C || MBEDTLS_ECDSA_C ||
345+
#endif /* MBEDTLS_ECDH_C || MBEDTLS_ECDSA_C ||
346346
MBEDTLS_KEY_EXCHANGE_ECJPAKE_ENABLED */
347347

348348
#if defined(MBEDTLS_KEY_EXCHANGE_ECJPAKE_ENABLED)
@@ -1217,7 +1217,7 @@ static int ssl_parse_supported_point_formats_ext( mbedtls_ssl_context *ssl,
12171217
{
12181218
#if defined(MBEDTLS_ECDH_C) || defined(MBEDTLS_ECDSA_C)
12191219
ssl->handshake->ecdh_ctx.point_format = p[0];
1220-
#endif
1220+
#endif
12211221
#if defined(MBEDTLS_KEY_EXCHANGE_ECJPAKE_ENABLED)
12221222
ssl->handshake->ecjpake_ctx.point_format = p[0];
12231223
#endif
@@ -1232,7 +1232,7 @@ static int ssl_parse_supported_point_formats_ext( mbedtls_ssl_context *ssl,
12321232
MBEDTLS_SSL_DEBUG_MSG( 1, ( "no point format in common" ) );
12331233
return( MBEDTLS_ERR_SSL_BAD_HS_SERVER_HELLO );
12341234
}
1235-
#endif /* MBEDTLS_ECDH_C || MBEDTLS_ECDSA_C ||
1235+
#endif /* MBEDTLS_ECDH_C || MBEDTLS_ECDSA_C ||
12361236
MBEDTLS_KEY_EXCHANGE_ECJPAKE_ENABLED */
12371237

12381238
#if defined(MBEDTLS_KEY_EXCHANGE_ECJPAKE_ENABLED)
@@ -2339,7 +2339,7 @@ static int ssl_parse_server_key_exchange( mbedtls_ssl_context *ssl )
23392339
ciphersuite_info->key_exchange == MBEDTLS_KEY_EXCHANGE_ECDHE_RSA ||
23402340
ciphersuite_info->key_exchange == MBEDTLS_KEY_EXCHANGE_ECDHE_ECDSA )
23412341
{
2342-
size_t sig_len, hashlen;
2342+
size_t sig_len, hashlen = 0;
23432343
unsigned char hash[64];
23442344
mbedtls_md_type_t md_alg = MBEDTLS_MD_NONE;
23452345
mbedtls_pk_type_t pk_alg = MBEDTLS_PK_NONE;
@@ -2726,7 +2726,7 @@ static int ssl_parse_server_hello_done( mbedtls_ssl_context *ssl )
27262726
static int ssl_write_client_key_exchange( mbedtls_ssl_context *ssl )
27272727
{
27282728
int ret;
2729-
size_t i, n;
2729+
size_t i = 0, n = 0;
27302730
const mbedtls_ssl_ciphersuite_t *ciphersuite_info = ssl->transform_negotiate->ciphersuite_info;
27312731

27322732
MBEDTLS_SSL_DEBUG_MSG( 2, ( "=> write client key exchange" ) );

components/security/mbedtls/src/ssl_tls.c

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -488,8 +488,8 @@ int mbedtls_ssl_derive_keys( mbedtls_ssl_context *ssl )
488488
unsigned char keyblk[256];
489489
unsigned char *key1;
490490
unsigned char *key2;
491-
unsigned char *mac_enc;
492-
unsigned char *mac_dec;
491+
unsigned char *mac_enc = NULL;
492+
unsigned char *mac_dec = NULL;
493493
size_t iv_copy_len;
494494
const mbedtls_cipher_info_t *cipher_info;
495495
const mbedtls_md_info_t *md_info;
@@ -817,7 +817,7 @@ int mbedtls_ssl_derive_keys( mbedtls_ssl_context *ssl )
817817
#if defined(MBEDTLS_SSL_PROTO_SSL3)
818818
if( ssl->minor_ver == MBEDTLS_SSL_MINOR_VERSION_0 )
819819
{
820-
if( transform->maclen > sizeof transform->mac_enc )
820+
if( (transform->maclen > sizeof transform->mac_enc) || (!mac_enc) || (!mac_dec) )
821821
{
822822
MBEDTLS_SSL_DEBUG_MSG( 1, ( "should never happen" ) );
823823
return( MBEDTLS_ERR_SSL_INTERNAL_ERROR );
@@ -830,7 +830,7 @@ int mbedtls_ssl_derive_keys( mbedtls_ssl_context *ssl )
830830
#endif /* MBEDTLS_SSL_PROTO_SSL3 */
831831
#if defined(MBEDTLS_SSL_PROTO_TLS1) || defined(MBEDTLS_SSL_PROTO_TLS1_1) || \
832832
defined(MBEDTLS_SSL_PROTO_TLS1_2)
833-
if( ssl->minor_ver >= MBEDTLS_SSL_MINOR_VERSION_1 )
833+
if( ssl->minor_ver >= MBEDTLS_SSL_MINOR_VERSION_1 && mac_enc && mac_dec)
834834
{
835835
mbedtls_md_hmac_starts( &transform->md_ctx_enc, mac_enc, transform->maclen );
836836
mbedtls_md_hmac_starts( &transform->md_ctx_dec, mac_dec, transform->maclen );

0 commit comments

Comments
 (0)