diff options
author | jsing <> | 2020-01-23 10:40:59 +0000 |
---|---|---|
committer | jsing <> | 2020-01-23 10:40:59 +0000 |
commit | 3738bd24e9d4a33d52a585206262895bd6893bf4 (patch) | |
tree | 43dc459859c1fb1a2702abab83aea4b376e97893 /src/lib/libssl/tls13_lib.c | |
parent | 8d4bd61260ee3ef0237ff103fbfa530c1c352552 (diff) | |
download | openbsd-3738bd24e9d4a33d52a585206262895bd6893bf4.tar.gz openbsd-3738bd24e9d4a33d52a585206262895bd6893bf4.tar.bz2 openbsd-3738bd24e9d4a33d52a585206262895bd6893bf4.zip |
Correctly handle TLSv1.3 ciphers suites in ssl3_choose_cipher().
Currently, TLSv1.3 cipher suites are filtered out by the fact that
they have authentication and key exchange algorithms that are not
being set in ssl_set_cert_masks(). Fix this so that ssl3_choose_cipher()
works for TLSv1.3, however we also now need to ensure that we filter out
TLSv1.3 for non-TLSv1.3 and only select TLSv1.3 for TLSv1.3.
ok beck@ tb@
Diffstat (limited to 'src/lib/libssl/tls13_lib.c')
-rw-r--r-- | src/lib/libssl/tls13_lib.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/src/lib/libssl/tls13_lib.c b/src/lib/libssl/tls13_lib.c index 5d8c359014..91dd566864 100644 --- a/src/lib/libssl/tls13_lib.c +++ b/src/lib/libssl/tls13_lib.c | |||
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: tls13_lib.c,v 1.24 2020/01/23 07:30:55 beck Exp $ */ | 1 | /* $OpenBSD: tls13_lib.c,v 1.25 2020/01/23 10:40:59 jsing Exp $ */ |
2 | /* | 2 | /* |
3 | * Copyright (c) 2018, 2019 Joel Sing <jsing@openbsd.org> | 3 | * Copyright (c) 2018, 2019 Joel Sing <jsing@openbsd.org> |
4 | * Copyright (c) 2019 Bob Beck <beck@openbsd.org> | 4 | * Copyright (c) 2019 Bob Beck <beck@openbsd.org> |
@@ -24,6 +24,11 @@ | |||
24 | #include "ssl_locl.h" | 24 | #include "ssl_locl.h" |
25 | #include "tls13_internal.h" | 25 | #include "tls13_internal.h" |
26 | 26 | ||
27 | SSL3_ENC_METHOD TLSv1_3_enc_data = { | ||
28 | .enc = NULL, | ||
29 | .enc_flags = SSL_ENC_FLAG_TLS1_3_CIPHERS, | ||
30 | }; | ||
31 | |||
27 | /* | 32 | /* |
28 | * RFC 8446 section 4.1.3, magic values which must be set by the | 33 | * RFC 8446 section 4.1.3, magic values which must be set by the |
29 | * server in server random if it is willing to downgrade but supports | 34 | * server in server random if it is willing to downgrade but supports |