Skip to content

Commit

Permalink
Merge pull request Mbed-TLS#36 from gbryant-arm/fix-namespace
Browse files Browse the repository at this point in the history
Fix namespace
  • Loading branch information
Hanno Becker authored Oct 9, 2020
2 parents 3f71cc4 + 37241af commit d757542
Show file tree
Hide file tree
Showing 5 changed files with 121 additions and 113 deletions.
43 changes: 22 additions & 21 deletions include/mbedtls/ssl_internal.h
Original file line number Diff line number Diff line change
Expand Up @@ -629,8 +629,8 @@ struct mbedtls_ssl_handshake_params
*/
#if defined(MBEDTLS_SSL_PROTO_SSL3) || defined(MBEDTLS_SSL_PROTO_TLS1) || \
defined(MBEDTLS_SSL_PROTO_TLS1_1)
mbedtls_md5_context fin_md5;
mbedtls_sha1_context fin_sha1;
mbedtls_md5_context fin_md5;
mbedtls_sha1_context fin_sha1;
#endif
#if defined(MBEDTLS_SSL_PROTO_TLS1_2) || defined(MBEDTLS_SSL_PROTO_TLS1_3_EXPERIMENTAL)
#if defined(MBEDTLS_SHA256_C)
Expand Down Expand Up @@ -1255,30 +1255,30 @@ int mbedtls_ssl_flush_output( mbedtls_ssl_context *ssl );


#if defined(MBEDTLS_SSL_PROTO_TLS1_3_EXPERIMENTAL)
int ssl_read_certificate_process(mbedtls_ssl_context* ssl);
int ssl_write_certificate_process(mbedtls_ssl_context* ssl);
int mbedtls_ssl_read_certificate_process(mbedtls_ssl_context* ssl);
int mbedtls_ssl_write_certificate_process(mbedtls_ssl_context* ssl);
#else
int mbedtls_ssl_parse_certificate( mbedtls_ssl_context *ssl );
int mbedtls_ssl_write_certificate( mbedtls_ssl_context *ssl );
#endif /* MBEDTLS_SSL_PROTO_TLS1_3_EXPERIMENTAL */

#if defined(MBEDTLS_SSL_PROTO_TLS1_3_EXPERIMENTAL) && defined(MBEDTLS_SSL_TLS13_COMPATIBILITY_MODE)
int ssl_write_change_cipher_spec_process( mbedtls_ssl_context* ssl );
int mbedtls_ssl_write_change_cipher_spec_process( mbedtls_ssl_context* ssl );
#else
int mbedtls_ssl_parse_change_cipher_spec( mbedtls_ssl_context *ssl );
int mbedtls_ssl_write_change_cipher_spec( mbedtls_ssl_context *ssl );
#endif /* MBEDTLS_SSL_PROTO_TLS1_3_EXPERIMENTAL && MBEDTLS_SSL_TLS13_COMPATIBILITY_MODE */

#if defined(MBEDTLS_SSL_PROTO_TLS1_3_EXPERIMENTAL)
int ssl_finished_in_process(mbedtls_ssl_context* ssl);
int ssl_finished_out_process(mbedtls_ssl_context* ssl);
int mbedtls_ssl_finished_in_process(mbedtls_ssl_context* ssl);
int mbedtls_ssl_finished_out_process(mbedtls_ssl_context* ssl);
#else
int mbedtls_ssl_parse_finished( mbedtls_ssl_context *ssl );
int mbedtls_ssl_write_finished( mbedtls_ssl_context *ssl );
#endif /* MBEDTLS_SSL_PROTO_TLS1_3_EXPERIMENTAL */

#if defined(MBEDTLS_SSL_PROTO_TLS1_3_EXPERIMENTAL)
int ssl_parse_new_session_ticket(mbedtls_ssl_context* ssl);
int mbedtls_ssl_parse_new_session_ticket(mbedtls_ssl_context* ssl);
#endif /* MBEDTLS_SSL_PROTO_TLS1_3_EXPERIMENTAL */


Expand All @@ -1293,43 +1293,44 @@ int mbedtls_ssl_key_derivation(mbedtls_ssl_context* ssl, mbedtls_ssl_key_set* tr


#if defined(MBEDTLS_SSL_PROTO_TLS1_3_EXPERIMENTAL)
int ssl_read_certificate_verify_process(mbedtls_ssl_context* ssl);
int ssl_certificate_verify_process(mbedtls_ssl_context* ssl);
int mbedtls_ssl_read_certificate_verify_process(mbedtls_ssl_context* ssl);
int mbedtls_ssl_certificate_verify_process(mbedtls_ssl_context* ssl);

int mbedtls_ssl_tls1_3_derive_master_secret(mbedtls_ssl_context* ssl);
int mbedtls_set_traffic_key(mbedtls_ssl_context* ssl, mbedtls_ssl_key_set* traffic_keys, mbedtls_ssl_transform* transform, int mode);
int mbedtls_ssl_generate_application_traffic_keys(mbedtls_ssl_context* ssl, mbedtls_ssl_key_set* traffic_keys);
int mbedtls_ssl_generate_resumption_master_secret(mbedtls_ssl_context* ssl);
int ssl_write_encrypted_extension(mbedtls_ssl_context* ssl);
int mbedtls_ssl_write_encrypted_extension(mbedtls_ssl_context* ssl);
int mbedtls_ssl_derive_traffic_keys(mbedtls_ssl_context* ssl, mbedtls_ssl_key_set* traffic_keys);
int incrementSequenceNumber(unsigned char* sequenceNumber, unsigned char* nonce, size_t ivlen);
int mbedtls_increment_sequence_number(unsigned char* sequenceNumber, unsigned char* nonce, size_t ivlen);

#if defined(MBEDTLS_SSL_TLS13_COMPATIBILITY_MODE)
int mbedtls_ssl_write_change_cipher_spec(mbedtls_ssl_context* ssl);
#endif /* MBEDTLS_SSL_TLS13_COMPATIBILITY_MODE */

#if defined(MBEDTLS_KEY_EXCHANGE_SOME_PSK_ENABLED)
int ssl_write_pre_shared_key_ext(mbedtls_ssl_context* ssl, unsigned char* buf, unsigned char* end, size_t* olen, int dummy_run);
int mbedtls_ssl_write_pre_shared_key_ext(mbedtls_ssl_context* ssl, unsigned char* buf, unsigned char* end, size_t* olen, int dummy_run);
#endif /* MBEDTLS_KEY_EXCHANGE_SOME_PSK_ENABLED */
#if defined(MBEDTLS_KEY_EXCHANGE_WITH_CERT_ENABLED)
int ssl_write_signature_algorithms_ext(mbedtls_ssl_context* ssl, unsigned char* buf, unsigned char* end, size_t* olen);
int ssl_parse_signature_algorithms_ext(mbedtls_ssl_context* ssl, const unsigned char* buf, size_t len);
int mbedtls_ssl_write_signature_algorithms_ext(mbedtls_ssl_context* ssl, unsigned char* buf, unsigned char* end, size_t* olen);
int mbedtls_ssl_parse_signature_algorithms_ext(mbedtls_ssl_context* ssl, const unsigned char* buf, size_t len);
int mbedtls_ssl_check_signature_scheme(const mbedtls_ssl_context* ssl, int signature_scheme);
#endif /* MBEDTLS_KEY_EXCHANGE_WITH_CERT_ENABLED */
#if defined(MBEDTLS_ZERO_RTT)
int mbedtls_ssl_early_data_key_derivation(mbedtls_ssl_context* ssl, mbedtls_ssl_key_set* traffic_keys);
int ssl_write_early_data_ext(mbedtls_ssl_context* ssl, unsigned char* buf, size_t buflen, size_t* olen);
int mbedtls_ssl_write_early_data_ext(mbedtls_ssl_context* ssl, unsigned char* buf, size_t buflen, size_t* olen);
#endif /* MBEDTLS_ZERO_RTT */
#if (defined(MBEDTLS_ECDH_C) || defined(MBEDTLS_ECDSA_C))
int ssl_parse_supported_groups_ext(mbedtls_ssl_context* ssl, const unsigned char* buf, size_t len);
int mbedtls_ssl_parse_supported_groups_ext(mbedtls_ssl_context* ssl, const unsigned char* buf, size_t len);
#endif /* MBEDTLS_ECDH_C || MBEDTLS_ECDSA_C */
#if defined(MBEDTLS_KEY_EXCHANGE_SOME_PSK_ENABLED)
int ssl_create_binder(mbedtls_ssl_context* ssl, unsigned char* psk, size_t psk_len, const mbedtls_md_info_t* md, const mbedtls_ssl_ciphersuite_t* suite_info, unsigned char* buffer, size_t blen, unsigned char* result);
int mbedtls_ssl_create_binder(mbedtls_ssl_context* ssl, unsigned char* psk, size_t psk_len, const mbedtls_md_info_t* md, const mbedtls_ssl_ciphersuite_t* suite_info, unsigned char* buffer, size_t blen, unsigned char* result);
#endif /* MBEDTLS_KEY_EXCHANGE_SOME_PSK_ENABLED */
#if defined(MBEDTLS_SSL_NEW_SESSION_TICKET)
int mbedtls_ssl_parse_new_session_ticket_server(mbedtls_ssl_context* ssl, unsigned char* buf, size_t len, mbedtls_ssl_ticket* ticket);
#endif /* MBEDTLS_SSL_NEW_SESSION_TICKET */
#if defined(MBEDTLS_KEY_EXCHANGE_SOME_PSK_ENABLED)
int ssl_parse_client_psk_identity_ext(mbedtls_ssl_context* ssl, const unsigned char* buf, size_t len);
int mbedtls_ssl_parse_client_psk_identity_ext(mbedtls_ssl_context* ssl, const unsigned char* buf, size_t len);
#endif /* MBEDTLS_KEY_EXCHANGE_SOME_PSK_ENABLED */

#if defined(MBEDTLS_SSL_PROTO_DTLS)
Expand Down Expand Up @@ -1585,8 +1586,8 @@ int mbedtls_ssl_flight_transmit( mbedtls_ssl_context *ssl );


#if defined(MBEDTLS_CID)
int ssl_parse_cid_ext(mbedtls_ssl_context* ssl, const unsigned char* buf, size_t len);
void ssl_write_cid_ext(mbedtls_ssl_context* ssl, unsigned char* buf, size_t* olen);
int mbedtls_ssl_parse_cid_ext(mbedtls_ssl_context* ssl, const unsigned char* buf, size_t len);
void mbedtls_ssl_write_cid_ext(mbedtls_ssl_context* ssl, unsigned char* buf, size_t* olen);
#endif /* MBEDTLS_CID */

/* Visible for testing purposes only */
Expand Down
65 changes: 33 additions & 32 deletions library/ssl_tls13_client.c
Original file line number Diff line number Diff line change
Expand Up @@ -660,7 +660,7 @@ static int ssl_write_psk_key_exchange_modes_ext( mbedtls_ssl_context *ssl,


/*
* ssl_write_pre_shared_key_ext( ) structure:
* mbedtls_ssl_write_pre_shared_key_ext( ) structure:
*
* struct {
* opaque identity<1..2^16-1>;
Expand Down Expand Up @@ -688,7 +688,7 @@ static int ssl_write_psk_key_exchange_modes_ext( mbedtls_ssl_context *ssl,
*/

#if defined(MBEDTLS_KEY_EXCHANGE_SOME_PSK_ENABLED)
/* ssl_create_binder( ):
/* mbedtls_ssl_create_binder( ):
0
|
Expand All @@ -710,7 +710,7 @@ static int ssl_write_psk_key_exchange_modes_ext( mbedtls_ssl_context *ssl,
| = client_early_traffic_secret
*/

int ssl_create_binder( mbedtls_ssl_context *ssl, unsigned char *psk, size_t psk_len, const mbedtls_md_info_t *md, const mbedtls_ssl_ciphersuite_t *suite_info, unsigned char *buffer, size_t blen, unsigned char *result ) {
int mbedtls_ssl_create_binder( mbedtls_ssl_context *ssl, unsigned char *psk, size_t psk_len, const mbedtls_md_info_t *md, const mbedtls_ssl_ciphersuite_t *suite_info, unsigned char *buffer, size_t blen, unsigned char *result ) {
int ret = 0;
int hash_length;
unsigned char salt[MBEDTLS_MD_MAX_SIZE];
Expand All @@ -731,7 +731,7 @@ int ssl_create_binder( mbedtls_ssl_context *ssl, unsigned char *psk, size_t psk_

if( hash_length == -1 )
{
MBEDTLS_SSL_DEBUG_MSG( 1, ( "mbedtls_hash_size_for_ciphersuite == -1, ssl_create_binder failed" ) );
MBEDTLS_SSL_DEBUG_MSG( 1, ( "mbedtls_hash_size_for_ciphersuite == -1, mbedtls_ssl_create_binder failed" ) );
return( MBEDTLS_ERR_SSL_INTERNAL_ERROR );
}

Expand Down Expand Up @@ -922,7 +922,7 @@ int ssl_create_binder( mbedtls_ssl_context *ssl, unsigned char *psk, size_t psk_
}


int ssl_write_pre_shared_key_ext( mbedtls_ssl_context *ssl,
int mbedtls_ssl_write_pre_shared_key_ext( mbedtls_ssl_context *ssl,
unsigned char* buf, unsigned char* end, size_t* olen, int dummy_run )
{
unsigned char *p = ( unsigned char * ) buf, *truncated_clienthello_end, *truncated_clienthello_start = ssl->out_msg;
Expand Down Expand Up @@ -969,7 +969,7 @@ int ssl_write_pre_shared_key_ext( mbedtls_ssl_context *ssl,

if( hash_len == -1 )
{
MBEDTLS_SSL_DEBUG_MSG( 1, ( "mbedtls_hash_size_for_ciphersuite == -1, ssl_write_pre_shared_key_ext failed" ) );
MBEDTLS_SSL_DEBUG_MSG( 1, ( "mbedtls_hash_size_for_ciphersuite == -1, mbedtls_ssl_write_pre_shared_key_ext failed" ) );
return( MBEDTLS_ERR_SSL_INTERNAL_ERROR );
}

Expand All @@ -989,7 +989,7 @@ int ssl_write_pre_shared_key_ext( mbedtls_ssl_context *ssl,
}
if( hash_len == -1 )
{
MBEDTLS_SSL_DEBUG_MSG( 1, ( "mbedtls_hash_size_for_ciphersuite == -1, ssl_write_pre_shared_key_ext failed" ) );
MBEDTLS_SSL_DEBUG_MSG( 1, ( "mbedtls_hash_size_for_ciphersuite == -1, mbedtls_ssl_write_pre_shared_key_ext failed" ) );
return( MBEDTLS_ERR_SSL_INTERNAL_ERROR );
}

Expand Down Expand Up @@ -1084,13 +1084,13 @@ int ssl_write_pre_shared_key_ext( mbedtls_ssl_context *ssl,

MBEDTLS_SSL_DEBUG_BUF( 3, "ssl_calc_binder computed over ", truncated_clienthello_start, truncated_clienthello_end - truncated_clienthello_start );

ret = ssl_create_binder( ssl, ssl->conf->psk, ssl->conf->psk_len, mbedtls_md_info_from_type( suite_info->mac ),
ret = mbedtls_ssl_create_binder( ssl, ssl->conf->psk, ssl->conf->psk_len, mbedtls_md_info_from_type( suite_info->mac ),
suite_info, truncated_clienthello_start, truncated_clienthello_end - truncated_clienthello_start, p );


if( ret != 0 )
{
MBEDTLS_SSL_DEBUG_RET( 1, "create_binder in ssl_write_pre_shared_key_ext failed: %d", ret );
MBEDTLS_SSL_DEBUG_RET( 1, "create_binder in mbedtls_ssl_write_pre_shared_key_ext failed: %d", ret );
return( MBEDTLS_ERR_SSL_BAD_HS_CLIENT_HELLO );
}
}
Expand Down Expand Up @@ -1837,7 +1837,8 @@ static int ssl_client_hello_write( mbedtls_ssl_context* ssl,
#endif /* MBEDTLS_SSL_MAX_FRAGMENT_LENGTH */

#if defined(MBEDTLS_ZERO_RTT)
ssl_write_early_data_ext( ssl, buf, (size_t)( end - buf ), &cur_ext_len );
mbedtls_ssl_write_early_data_ext( ssl, buf, (size_t)( end - buf ),
&cur_ext_len );
total_ext_len += cur_ext_len;
buf += cur_ext_len;
#endif /* MBEDTLS_ZERO_RTT */
Expand Down Expand Up @@ -1902,7 +1903,7 @@ static int ssl_client_hello_write( mbedtls_ssl_context* ssl,

if( ssl->conf->key_exchange_modes == MBEDTLS_SSL_TLS13_KEY_EXCHANGE_MODE_ECDHE_ECDSA ||
ssl->conf->key_exchange_modes == MBEDTLS_SSL_TLS13_KEY_EXCHANGE_MODE_ALL ) {
ret = ssl_write_signature_algorithms_ext( ssl, buf, end, &cur_ext_len );
ret = mbedtls_ssl_write_signature_algorithms_ext( ssl, buf, end, &cur_ext_len );
total_ext_len += cur_ext_len;
buf += cur_ext_len;

Expand Down Expand Up @@ -1947,7 +1948,7 @@ static int ssl_client_hello_write( mbedtls_ssl_context* ssl,
* because it has to be updated later.
*/
ssl->handshake->ptr_to_psk_ext = buf;
ret = ssl_write_pre_shared_key_ext( ssl, buf, end, &cur_ext_len,0 );
ret = mbedtls_ssl_write_pre_shared_key_ext( ssl, buf, end, &cur_ext_len,0 );
total_ext_len += cur_ext_len;
buf += cur_ext_len;

Expand Down Expand Up @@ -2463,9 +2464,9 @@ static int ssl_certificate_request_parse( mbedtls_ssl_context* ssl,
case MBEDTLS_TLS_EXT_SIG_ALG:
MBEDTLS_SSL_DEBUG_MSG( 3, ( "found signature_algorithms extension" ) );

if( ( ret = ssl_parse_signature_algorithms_ext( ssl, ext + 4, (size_t)ext_size ) ) != 0 )
if( ( ret = mbedtls_ssl_parse_signature_algorithms_ext( ssl, ext + 4, (size_t)ext_size ) ) != 0 )
{
MBEDTLS_SSL_DEBUG_MSG( 1, ( "ssl_parse_signature_algorithms_ext" ) );
MBEDTLS_SSL_DEBUG_MSG( 1, ( "mbedtls_ssl_parse_signature_algorithms_ext" ) );
SSL_PEND_FATAL_ALERT( MBEDTLS_SSL_ALERT_MSG_DECODE_ERROR );
return( ret );
}
Expand Down Expand Up @@ -3987,11 +3988,11 @@ int mbedtls_ssl_handshake_client_step( mbedtls_ssl_context *ssl )
#if defined(MBEDTLS_SSL_TLS13_COMPATIBILITY_MODE)
case MBEDTLS_SSL_CLIENT_CCS_AFTER_CLIENT_HELLO:

ret = ssl_write_change_cipher_spec_process( ssl );
ret = mbedtls_ssl_write_change_cipher_spec_process( ssl );

if( ret != 0 )
{
MBEDTLS_SSL_DEBUG_RET( 1, "ssl_write_change_cipher_spec_process", ret );
MBEDTLS_SSL_DEBUG_RET( 1, "mbedtls_ssl_write_change_cipher_spec_process", ret );
return( ret );
}

Expand Down Expand Up @@ -4072,11 +4073,11 @@ int mbedtls_ssl_handshake_client_step( mbedtls_ssl_context *ssl )
#if defined(MBEDTLS_SSL_TLS13_COMPATIBILITY_MODE)
case MBEDTLS_SSL_CLIENT_CCS_BEFORE_2ND_CLIENT_HELLO:

ret = ssl_write_change_cipher_spec_process( ssl );
ret = mbedtls_ssl_write_change_cipher_spec_process( ssl );

if( ret != 0 )
{
MBEDTLS_SSL_DEBUG_RET( 1, "ssl_write_change_cipher_spec_process", ret );
MBEDTLS_SSL_DEBUG_RET( 1, "mbedtls_ssl_write_change_cipher_spec_process", ret );
return( ret );
}

Expand Down Expand Up @@ -4167,23 +4168,23 @@ int mbedtls_ssl_handshake_client_step( mbedtls_ssl_context *ssl )
/* ----- READ SERVER CERTIFICATE ----*/

case MBEDTLS_SSL_SERVER_CERTIFICATE:
ret = ssl_read_certificate_process( ssl );
ret = mbedtls_ssl_read_certificate_process( ssl );

if( ret != 0 )
{
MBEDTLS_SSL_DEBUG_RET( 1, "ssl_read_certificate_process", ret );
MBEDTLS_SSL_DEBUG_RET( 1, "mbedtls_ssl_read_certificate_process", ret );
return( ret );
}
break;

/* ----- READ CERTIFICATE VERIFY ----*/

case MBEDTLS_SSL_CERTIFICATE_VERIFY:
ret = ssl_read_certificate_verify_process( ssl );
ret = mbedtls_ssl_read_certificate_verify_process( ssl );

if( ret != 0 )
{
MBEDTLS_SSL_DEBUG_RET( 1, "ssl_read_certificate_verify_process", ret );
MBEDTLS_SSL_DEBUG_RET( 1, "mbedtls_ssl_read_certificate_verify_process", ret );
return( ret );
}

Expand All @@ -4193,11 +4194,11 @@ int mbedtls_ssl_handshake_client_step( mbedtls_ssl_context *ssl )

case MBEDTLS_SSL_SERVER_FINISHED:

ret = ssl_finished_in_process( ssl );
ret = mbedtls_ssl_finished_in_process( ssl );

if( ret != 0 )
{
MBEDTLS_SSL_DEBUG_RET( 1, "ssl_finished_in_process", ret );
MBEDTLS_SSL_DEBUG_RET( 1, "mbedtls_ssl_finished_in_process", ret );
return( ret );
}
#if defined(MBEDTLS_SSL_PROTO_DTLS)
Expand Down Expand Up @@ -4244,11 +4245,11 @@ int mbedtls_ssl_handshake_client_step( mbedtls_ssl_context *ssl )
#if defined(MBEDTLS_SSL_TLS13_COMPATIBILITY_MODE)
case MBEDTLS_SSL_CLIENT_CCS_AFTER_SERVER_FINISHED:

ret = ssl_write_change_cipher_spec_process( ssl );
ret = mbedtls_ssl_write_change_cipher_spec_process( ssl );

if( ret != 0 )
{
MBEDTLS_SSL_DEBUG_RET( 1, "ssl_write_change_cipher_spec_process", ret );
MBEDTLS_SSL_DEBUG_RET( 1, "mbedtls_ssl_write_change_cipher_spec_process", ret );
return( ret );
}

Expand All @@ -4260,35 +4261,35 @@ int mbedtls_ssl_handshake_client_step( mbedtls_ssl_context *ssl )

case MBEDTLS_SSL_CLIENT_CERTIFICATE:

ret = ssl_write_certificate_process( ssl );
ret = mbedtls_ssl_write_certificate_process( ssl );

if( ret != 0 )
{
MBEDTLS_SSL_DEBUG_RET( 1, "ssl_write_certificate_process", ret );
MBEDTLS_SSL_DEBUG_RET( 1, "mbedtls_ssl_write_certificate_process", ret );
return( ret );
}
break;

/* ----- WRITE CLIENT CERTIFICATE VERIFY ----*/

case MBEDTLS_SSL_CLIENT_CERTIFICATE_VERIFY:
ret = ssl_certificate_verify_process( ssl );
ret = mbedtls_ssl_certificate_verify_process( ssl );

if( ret != 0 )
{
MBEDTLS_SSL_DEBUG_RET( 1, "ssl_certificate_verify_process", ret );
MBEDTLS_SSL_DEBUG_RET( 1, "mbedtls_ssl_certificate_verify_process", ret );
return( ret );
}
break;

/* ----- WRITE CLIENT FINISHED ----*/

case MBEDTLS_SSL_CLIENT_FINISHED:
ret = ssl_finished_out_process( ssl );
ret = mbedtls_ssl_finished_out_process( ssl );

if( ret != 0 )
{
MBEDTLS_SSL_DEBUG_RET( 1, "ssl_finished_out_process", ret );
MBEDTLS_SSL_DEBUG_RET( 1, "mbedtls_ssl_finished_out_process", ret );
return( ret );
}
break;
Expand Down
Loading

0 comments on commit d757542

Please sign in to comment.