From dadeb20383956f6b8654fce1501ab2d572f09058 Mon Sep 17 00:00:00 2001 From: Pengyu Lv Date: Wed, 18 Jan 2023 17:32:34 +0800 Subject: [PATCH] TLS 1.3: SRV: Don't select ephemeral mode on resumption Signed-off-by: Pengyu Lv --- library/ssl_tls13_server.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/library/ssl_tls13_server.c b/library/ssl_tls13_server.c index 858a7a364b..90869d6c3a 100644 --- a/library/ssl_tls13_server.c +++ b/library/ssl_tls13_server.c @@ -982,7 +982,8 @@ MBEDTLS_CHECK_RETURN_CRITICAL static int ssl_tls13_check_ephemeral_key_exchange(mbedtls_ssl_context *ssl) { #if defined(MBEDTLS_SSL_TLS1_3_KEY_EXCHANGE_MODE_EPHEMERAL_ENABLED) - return mbedtls_ssl_conf_tls13_ephemeral_enabled(ssl) && + return !ssl->handshake->resume && + mbedtls_ssl_conf_tls13_ephemeral_enabled(ssl) && ssl_tls13_client_hello_has_exts_for_ephemeral_key_exchange(ssl); #else ((void) ssl);