summaryrefslogtreecommitdiffstats
path: root/ssl/tls13_enc.c
diff options
context:
space:
mode:
authorMatt Caswell <matt@openssl.org>2018-07-30 09:13:14 +0100
committerMatt Caswell <matt@openssl.org>2018-07-31 09:31:50 +0100
commit43a0f2733a943799060ea275516fcce00d89eb38 (patch)
treef306c49491086a35ac38767945b1a026006191ce /ssl/tls13_enc.c
parent50db81633ece00593b245afed0ed9480d7ffb334 (diff)
Fix some TLSv1.3 alert issues
Ensure that the certificate required alert actually gets sent (and doesn't get translated into handshake failure in TLSv1.3). Ensure that proper reason codes are given for the new TLSv1.3 alerts. Remove an out of date macro for TLS13_AD_END_OF_EARLY_DATA. This is a left over from an earlier TLSv1.3 draft that is no longer used. Fixes #6804 Reviewed-by: Tim Hudson <tjh@openssl.org> (Merged from https://github.com/openssl/openssl/pull/6809)
Diffstat (limited to 'ssl/tls13_enc.c')
-rw-r--r--ssl/tls13_enc.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/ssl/tls13_enc.c b/ssl/tls13_enc.c
index 264381bd00..48990fd65c 100644
--- a/ssl/tls13_enc.c
+++ b/ssl/tls13_enc.c
@@ -701,7 +701,8 @@ int tls13_update_key(SSL *s, int sending)
int tls13_alert_code(int code)
{
- if (code == SSL_AD_MISSING_EXTENSION)
+ /* There are 2 additional alerts in TLSv1.3 compared to TLSv1.2 */
+ if (code == SSL_AD_MISSING_EXTENSION || code == SSL_AD_CERTIFICATE_REQUIRED)
return code;
return tls1_alert_code(code);