remove `select_ciphersuite`
Signed-off-by: Jerry Yu <jerry.h.yu@arm.com>
diff --git a/library/ssl_tls13_server.c b/library/ssl_tls13_server.c
index 906ead7..1faa6a7 100644
--- a/library/ssl_tls13_server.c
+++ b/library/ssl_tls13_server.c
@@ -217,6 +217,9 @@
{
psa_algorithm_t psk_hash_alg = PSA_ALG_SHA_256;
+ *selected_ciphersuite = 0;
+ *selected_ciphersuite_info = NULL;
+
/* RFC 8446, page 55.
*
* For externally established PSKs, the Hash algorithm MUST be set when the
@@ -267,35 +270,8 @@
((void) session);
((void) cipher_suites);
((void) cipher_suites_end);
- ((void) selected_ciphersuite);
- ((void) selected_ciphersuite_info);
- return( MBEDTLS_ERR_SSL_FEATURE_UNAVAILABLE );
-}
-
-MBEDTLS_CHECK_RETURN_CRITICAL
-static int ssl_tls13_select_ciphersuite(
- mbedtls_ssl_context *ssl,
- const unsigned char *cipher_suites,
- const unsigned char *cipher_suites_end,
- int psk_type,
- mbedtls_ssl_session *session,
- uint16_t *selected_ciphersuite,
- const mbedtls_ssl_ciphersuite_t **selected_ciphersuite_info )
-{
*selected_ciphersuite = 0;
*selected_ciphersuite_info = NULL;
- switch( psk_type )
- {
- case MBEDTLS_SSL_TLS1_3_PSK_EXTERNAL:
- return( ssl_tls13_select_ciphersuite_for_psk(
- ssl, cipher_suites, cipher_suites_end,
- selected_ciphersuite, selected_ciphersuite_info ) );
- case MBEDTLS_SSL_TLS1_3_PSK_RESUMPTION:
- return( ssl_tls13_select_ciphersuite_for_resumption(
- ssl, cipher_suites, cipher_suites_end, session,
- selected_ciphersuite, selected_ciphersuite_info ) );
- }
-
return( MBEDTLS_ERR_SSL_FEATURE_UNAVAILABLE );
}
@@ -397,9 +373,21 @@
continue;
MBEDTLS_SSL_DEBUG_MSG( 4, ( "found matched identity" ) );
- ret = ssl_tls13_select_ciphersuite( ssl, ciphersuites, ciphersuites_end,
- psk_type, NULL, &cipher_suite,
- &ciphersuite_info );
+ switch( psk_type )
+ {
+ case MBEDTLS_SSL_TLS1_3_PSK_EXTERNAL:
+ ret = ssl_tls13_select_ciphersuite_for_psk(
+ ssl, ciphersuites, ciphersuites_end,
+ &cipher_suite, &ciphersuite_info );
+ break;
+ case MBEDTLS_SSL_TLS1_3_PSK_RESUMPTION:
+ ret = ssl_tls13_select_ciphersuite_for_resumption(
+ ssl, ciphersuites, ciphersuites_end, NULL,
+ &cipher_suite, &ciphersuite_info );
+ break;
+ default:
+ return( MBEDTLS_ERR_SSL_INTERNAL_ERROR );
+ }
if( ret != 0 )
{
/* See below, no cipher_suite available, abort handshake */
@@ -407,7 +395,7 @@
MBEDTLS_SSL_ALERT_MSG_DECRYPT_ERROR,
MBEDTLS_ERR_SSL_HANDSHAKE_FAILURE );
MBEDTLS_SSL_DEBUG_RET(
- 2, "ssl_tls13_select_ciphersuite_for_psk", ret );
+ 2, "ssl_tls13_select_ciphersuite", ret );
return( ret );
}