diff options
author | jsing <> | 2020-01-26 06:55:17 +0000 |
---|---|---|
committer | jsing <> | 2020-01-26 06:55:17 +0000 |
commit | 2c5f414c66d94839172e610df260529eecc306db (patch) | |
tree | 1a230b4d18426696e25cf14f5ede2743f5b9a94d /src/lib/libssl/tls13_client.c | |
parent | 7da7bbce29b0ab166d3085a673b34a695e3382c5 (diff) | |
download | openbsd-2c5f414c66d94839172e610df260529eecc306db.tar.gz openbsd-2c5f414c66d94839172e610df260529eecc306db.tar.bz2 openbsd-2c5f414c66d94839172e610df260529eecc306db.zip |
When switching back to a legacy client or server, ensure we reset the
handshake function pointer.
Fixes an isssue found by jca@ with OpenVPN.
ok beck@ tb@
Diffstat (limited to 'src/lib/libssl/tls13_client.c')
-rw-r--r-- | src/lib/libssl/tls13_client.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/src/lib/libssl/tls13_client.c b/src/lib/libssl/tls13_client.c index 74a4a4db69..f75f605ace 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.36 2020/01/26 03:38:24 beck Exp $ */ | 1 | /* $OpenBSD: tls13_client.c,v 1.37 2020/01/26 06:55:17 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 | * |
@@ -105,6 +105,7 @@ tls13_use_legacy_client(struct tls13_ctx *ctx) | |||
105 | CBS cbs; | 105 | CBS cbs; |
106 | 106 | ||
107 | s->method = tls_legacy_client_method(); | 107 | s->method = tls_legacy_client_method(); |
108 | s->internal->handshake_func = s->method->internal->ssl_connect; | ||
108 | s->client_version = s->version = s->method->internal->max_version; | 109 | s->client_version = s->version = s->method->internal->max_version; |
109 | 110 | ||
110 | if (!ssl3_setup_init_buffer(s)) | 111 | if (!ssl3_setup_init_buffer(s)) |