summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/lib/libssl/tls13_client.c32
1 files changed, 17 insertions, 15 deletions
diff --git a/src/lib/libssl/tls13_client.c b/src/lib/libssl/tls13_client.c
index 737a1015a5..fb21b54621 100644
--- a/src/lib/libssl/tls13_client.c
+++ b/src/lib/libssl/tls13_client.c
@@ -1,4 +1,4 @@
1/* $OpenBSD: tls13_client.c,v 1.33 2020/01/25 09:20:56 jsing Exp $ */ 1/* $OpenBSD: tls13_client.c,v 1.34 2020/01/25 14:23:27 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 * 4 *
@@ -288,20 +288,22 @@ tls13_server_hello_process(struct tls13_ctx *ctx, CBS *cbs)
288 goto err; 288 goto err;
289 289
290 if (tls13_server_hello_is_legacy(cbs)) { 290 if (tls13_server_hello_is_legacy(cbs)) {
291 /* 291 if (ctx->hs->max_version >= TLS1_3_VERSION) {
292 * RFC 8446 section 4.1.3, We must not downgrade if 292 /*
293 * the server random value contains the TLS 1.2 or 1.1 293 * RFC 8446 section 4.1.3, We must not downgrade if
294 * magical value. 294 * the server random value contains the TLS 1.2 or 1.1
295 */ 295 * magical value.
296 if (!CBS_skip(&server_random, CBS_len(&server_random) - 296 */
297 sizeof(tls13_downgrade_12))) 297 if (!CBS_skip(&server_random, CBS_len(&server_random) -
298 goto err; 298 sizeof(tls13_downgrade_12)))
299 if (CBS_mem_equal(&server_random, tls13_downgrade_12, 299 goto err;
300 sizeof(tls13_downgrade_12)) || 300 if (CBS_mem_equal(&server_random, tls13_downgrade_12,
301 CBS_mem_equal(&server_random, tls13_downgrade_11, 301 sizeof(tls13_downgrade_12)) ||
302 sizeof(tls13_downgrade_11))) { 302 CBS_mem_equal(&server_random, tls13_downgrade_11,
303 ctx->alert = SSL_AD_ILLEGAL_PARAMETER; 303 sizeof(tls13_downgrade_11))) {
304 goto err; 304 ctx->alert = SSL_AD_ILLEGAL_PARAMETER;
305 goto err;
306 }
305 } 307 }
306 308
307 if (!CBS_skip(cbs, CBS_len(cbs))) 309 if (!CBS_skip(cbs, CBS_len(cbs)))