diff --git a/src/tls.c b/src/tls.c index c608261217..88bb04ef0b 100644 --- a/src/tls.c +++ b/src/tls.c @@ -2595,7 +2595,10 @@ static int TLSX_SNI_VerifyParse(WOLFSSL* ssl, byte isRequest) continue; } - SendAlert(ssl, alert_fatal, handshake_failure); + SendAlert(ssl, alert_fatal, + IsAtLeastTLSv1_3(ssl->version) + ? missing_extension + : handshake_failure); WOLFSSL_ERROR_VERBOSE(SNI_ABSENT_ERROR); return SNI_ABSENT_ERROR; } @@ -2606,7 +2609,10 @@ static int TLSX_SNI_VerifyParse(WOLFSSL* ssl, byte isRequest) if (ssl_sni->status != WOLFSSL_SNI_NO_MATCH) continue; - SendAlert(ssl, alert_fatal, handshake_failure); + SendAlert(ssl, alert_fatal, + IsAtLeastTLSv1_3(ssl->version) + ? missing_extension + : handshake_failure); WOLFSSL_ERROR_VERBOSE(SNI_ABSENT_ERROR); return SNI_ABSENT_ERROR; }