diff options
author | jsing <> | 2021-03-11 17:14:47 +0000 |
---|---|---|
committer | jsing <> | 2021-03-11 17:14:47 +0000 |
commit | 7a96ea5b5a6bd9d1c199cb3f2b39f58b318330e0 (patch) | |
tree | 812227b9eac6204c336048feeaa5d32e3db2f552 /src/lib/libssl/ssl_clnt.c | |
parent | 9718c009ebd714a8cb224839233e9267bf1471d8 (diff) | |
download | openbsd-7a96ea5b5a6bd9d1c199cb3f2b39f58b318330e0.tar.gz openbsd-7a96ea5b5a6bd9d1c199cb3f2b39f58b318330e0.tar.bz2 openbsd-7a96ea5b5a6bd9d1c199cb3f2b39f58b318330e0.zip |
Remove ssl_downgrade_max_version().
Now that we store our maximum TLS version at the start of the handshake,
we can check against that directly.
ok inoguchi@ tb@
Diffstat (limited to 'src/lib/libssl/ssl_clnt.c')
-rw-r--r-- | src/lib/libssl/ssl_clnt.c | 11 |
1 files changed, 4 insertions, 7 deletions
diff --git a/src/lib/libssl/ssl_clnt.c b/src/lib/libssl/ssl_clnt.c index 97418f1ac7..06941530c6 100644 --- a/src/lib/libssl/ssl_clnt.c +++ b/src/lib/libssl/ssl_clnt.c | |||
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: ssl_clnt.c,v 1.85 2021/03/10 18:27:01 jsing Exp $ */ | 1 | /* $OpenBSD: ssl_clnt.c,v 1.86 2021/03/11 17:14:46 jsing Exp $ */ |
2 | /* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) | 2 | /* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) |
3 | * All rights reserved. | 3 | * All rights reserved. |
4 | * | 4 | * |
@@ -859,7 +859,6 @@ ssl3_get_server_hello(SSL *s) | |||
859 | { | 859 | { |
860 | CBS cbs, server_random, session_id; | 860 | CBS cbs, server_random, session_id; |
861 | uint16_t server_version, cipher_suite; | 861 | uint16_t server_version, cipher_suite; |
862 | uint16_t max_version; | ||
863 | uint8_t compression_method; | 862 | uint8_t compression_method; |
864 | const SSL_CIPHER *cipher; | 863 | const SSL_CIPHER *cipher; |
865 | const SSL_METHOD *method; | 864 | const SSL_METHOD *method; |
@@ -930,10 +929,8 @@ ssl3_get_server_hello(SSL *s) | |||
930 | sizeof(s->s3->server_random), NULL)) | 929 | sizeof(s->s3->server_random), NULL)) |
931 | goto err; | 930 | goto err; |
932 | 931 | ||
933 | if (!ssl_downgrade_max_version(s, &max_version)) | 932 | if (S3I(s)->hs.our_max_tls_version >= TLS1_2_VERSION && |
934 | goto err; | 933 | S3I(s)->hs.negotiated_tls_version < S3I(s)->hs.our_max_tls_version) { |
935 | if (!SSL_is_dtls(s) && max_version >= TLS1_2_VERSION && | ||
936 | s->version < max_version) { | ||
937 | /* | 934 | /* |
938 | * RFC 8446 section 4.1.3. We must not downgrade if the server | 935 | * RFC 8446 section 4.1.3. We must not downgrade if the server |
939 | * random value contains the TLS 1.2 or TLS 1.1 magical value. | 936 | * random value contains the TLS 1.2 or TLS 1.1 magical value. |
@@ -941,7 +938,7 @@ ssl3_get_server_hello(SSL *s) | |||
941 | if (!CBS_skip(&server_random, | 938 | if (!CBS_skip(&server_random, |
942 | CBS_len(&server_random) - sizeof(tls13_downgrade_12))) | 939 | CBS_len(&server_random) - sizeof(tls13_downgrade_12))) |
943 | goto err; | 940 | goto err; |
944 | if (s->version == TLS1_2_VERSION && | 941 | if (S3I(s)->hs.negotiated_tls_version == TLS1_2_VERSION && |
945 | CBS_mem_equal(&server_random, tls13_downgrade_12, | 942 | CBS_mem_equal(&server_random, tls13_downgrade_12, |
946 | sizeof(tls13_downgrade_12))) { | 943 | sizeof(tls13_downgrade_12))) { |
947 | al = SSL_AD_ILLEGAL_PARAMETER; | 944 | al = SSL_AD_ILLEGAL_PARAMETER; |