summaryrefslogtreecommitdiff
path: root/src/lib/libssl/tls13_internal.h
diff options
context:
space:
mode:
authortb <>2020-01-22 02:39:45 +0000
committertb <>2020-01-22 02:39:45 +0000
commite841f2e08f8bcc62f31051874b1b2a491665e7c6 (patch)
treee3b7e917f86898f6c4c09cc95fd58779cf635a2f /src/lib/libssl/tls13_internal.h
parente42a9af6bede5e8c30f66cf9013f858a29caed3e (diff)
downloadopenbsd-e841f2e08f8bcc62f31051874b1b2a491665e7c6.tar.gz
openbsd-e841f2e08f8bcc62f31051874b1b2a491665e7c6.tar.bz2
openbsd-e841f2e08f8bcc62f31051874b1b2a491665e7c6.zip
The legacy_record_version must be set to TLS1_2_VERSION except
in the ClientHello where it may be set to TLS1_VERSION. Use the minimal supported version to decide whether we choose to do so or not. Use a sent hook to set it back TLS1_2_VERSION right after the ClientHello message is on the wire. ok beck jsing
Diffstat (limited to 'src/lib/libssl/tls13_internal.h')
-rw-r--r--src/lib/libssl/tls13_internal.h5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/lib/libssl/tls13_internal.h b/src/lib/libssl/tls13_internal.h
index 167ed1f254..1eb05b7100 100644
--- a/src/lib/libssl/tls13_internal.h
+++ b/src/lib/libssl/tls13_internal.h
@@ -1,4 +1,4 @@
1/* $OpenBSD: tls13_internal.h,v 1.41 2020/01/22 02:21:05 beck Exp $ */ 1/* $OpenBSD: tls13_internal.h,v 1.42 2020/01/22 02:39:45 tb Exp $ */
2/* 2/*
3 * Copyright (c) 2018 Bob Beck <beck@openbsd.org> 3 * Copyright (c) 2018 Bob Beck <beck@openbsd.org>
4 * Copyright (c) 2018 Theo Buehler <tb@openbsd.org> 4 * Copyright (c) 2018 Theo Buehler <tb@openbsd.org>
@@ -122,6 +122,8 @@ void tls13_record_layer_set_aead(struct tls13_record_layer *rl,
122 const EVP_AEAD *aead); 122 const EVP_AEAD *aead);
123void tls13_record_layer_set_hash(struct tls13_record_layer *rl, 123void tls13_record_layer_set_hash(struct tls13_record_layer *rl,
124 const EVP_MD *hash); 124 const EVP_MD *hash);
125void tls13_record_layer_set_legacy_version(struct tls13_record_layer *rl,
126 uint16_t version);
125void tls13_record_layer_handshake_completed(struct tls13_record_layer *rl); 127void tls13_record_layer_handshake_completed(struct tls13_record_layer *rl);
126int tls13_record_layer_set_read_traffic_key(struct tls13_record_layer *rl, 128int tls13_record_layer_set_read_traffic_key(struct tls13_record_layer *rl,
127 struct tls13_secret *read_key); 129 struct tls13_secret *read_key);
@@ -253,6 +255,7 @@ int tls13_legacy_shutdown(SSL *ssl);
253int tls13_handshake_perform(struct tls13_ctx *ctx); 255int tls13_handshake_perform(struct tls13_ctx *ctx);
254 256
255int tls13_client_hello_send(struct tls13_ctx *ctx); 257int tls13_client_hello_send(struct tls13_ctx *ctx);
258int tls13_client_hello_sent(struct tls13_ctx *ctx);
256int tls13_client_hello_recv(struct tls13_ctx *ctx); 259int tls13_client_hello_recv(struct tls13_ctx *ctx);
257int tls13_client_hello_retry_send(struct tls13_ctx *ctx); 260int tls13_client_hello_retry_send(struct tls13_ctx *ctx);
258int tls13_client_hello_retry_recv(struct tls13_ctx *ctx); 261int tls13_client_hello_retry_recv(struct tls13_ctx *ctx);