summaryrefslogtreecommitdiff
path: root/src/lib/libssl/tls13_server.c
diff options
context:
space:
mode:
authortb <>2020-01-22 05:06:23 +0000
committertb <>2020-01-22 05:06:23 +0000
commit0cbc880fa36f08c10caa253c5b025333c684fa2f (patch)
treef5dc757ef7c1ccce03be8af3c9c22f746cace496 /src/lib/libssl/tls13_server.c
parentaa63e39fdcbb655a32b0cd7bf602f7f051f03e52 (diff)
downloadopenbsd-0cbc880fa36f08c10caa253c5b025333c684fa2f.tar.gz
openbsd-0cbc880fa36f08c10caa253c5b025333c684fa2f.tar.bz2
openbsd-0cbc880fa36f08c10caa253c5b025333c684fa2f.zip
After the ClientHello has been sent or received and before the peer's
Finished message has been received, a change cipher spec may be received and must be ignored. Add a flag to the record layer struct and set it at the appropriate moments during the handshake so that we will ignore it. ok jsing
Diffstat (limited to 'src/lib/libssl/tls13_server.c')
-rw-r--r--src/lib/libssl/tls13_server.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/lib/libssl/tls13_server.c b/src/lib/libssl/tls13_server.c
index 10d85a62b3..fc3e80ad58 100644
--- a/src/lib/libssl/tls13_server.c
+++ b/src/lib/libssl/tls13_server.c
@@ -1,4 +1,4 @@
1/* $OpenBSD: tls13_server.c,v 1.4 2020/01/22 02:21:05 beck Exp $ */ 1/* $OpenBSD: tls13_server.c,v 1.5 2020/01/22 05:06:23 tb Exp $ */
2/* 2/*
3 * Copyright (c) 2019 Joel Sing <jsing@openbsd.org> 3 * Copyright (c) 2019 Joel Sing <jsing@openbsd.org>
4 * 4 *
@@ -81,6 +81,8 @@ tls13_legacy_accept(SSL *ssl)
81int 81int
82tls13_client_hello_recv(struct tls13_ctx *ctx) 82tls13_client_hello_recv(struct tls13_ctx *ctx)
83{ 83{
84 tls13_record_layer_allow_ccs(ctx->rl, 1);
85
84 return 0; 86 return 0;
85} 87}
86 88
@@ -135,6 +137,8 @@ tls13_client_certificate_verify_recv(struct tls13_ctx *ctx)
135int 137int
136tls13_client_finished_recv(struct tls13_ctx *ctx) 138tls13_client_finished_recv(struct tls13_ctx *ctx)
137{ 139{
140 tls13_record_layer_allow_ccs(ctx->rl, 0);
141
138 return 0; 142 return 0;
139} 143}
140 144