summaryrefslogtreecommitdiffstats
path: root/lib/libssl/tls13_lib.c
diff options
context:
space:
mode:
authortb <tb@openbsd.org>2020-02-05 06:12:43 +0000
committertb <tb@openbsd.org>2020-02-05 06:12:43 +0000
commit753de96b64f94299bc1d3cc9029cb07bcab2075a (patch)
treed861a9199aad4c9af471d6d1ad53efc5883fcbd7 /lib/libssl/tls13_lib.c
parentiterated_hash is unused (diff)
downloadwireguard-openbsd-753de96b64f94299bc1d3cc9029cb07bcab2075a.tar.xz
wireguard-openbsd-753de96b64f94299bc1d3cc9029cb07bcab2075a.zip
Rework tls13_legacy_handshake_message_{recv,sent}_cb() to use
their own CBS as a preparation for upcoming HRR diffs. ok jsing
Diffstat (limited to 'lib/libssl/tls13_lib.c')
-rw-r--r--lib/libssl/tls13_lib.c28
1 files changed, 17 insertions, 11 deletions
diff --git a/lib/libssl/tls13_lib.c b/lib/libssl/tls13_lib.c
index 3a90c0d6df9..92743ef4b36 100644
--- a/lib/libssl/tls13_lib.c
+++ b/lib/libssl/tls13_lib.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: tls13_lib.c,v 1.32 2020/01/29 17:03:58 jsing Exp $ */
+/* $OpenBSD: tls13_lib.c,v 1.33 2020/02/05 06:12:43 tb Exp $ */
/*
* Copyright (c) 2018, 2019 Joel Sing <jsing@openbsd.org>
* Copyright (c) 2019 Bob Beck <beck@openbsd.org>
@@ -106,27 +106,33 @@ tls13_alert_received_cb(uint8_t alert_desc, void *arg)
}
static void
-tls13_legacy_handshake_message_recv_cb(void *arg, CBS *cbs)
+tls13_legacy_handshake_message_recv_cb(void *arg)
{
struct tls13_ctx *ctx = arg;
SSL *s = ctx->ssl;
+ CBS cbs;
- if (s->internal->msg_callback != NULL)
- s->internal->msg_callback(0, TLS1_3_VERSION, SSL3_RT_HANDSHAKE,
- CBS_data(cbs), CBS_len(cbs), s,
- s->internal->msg_callback_arg);
+ if (s->internal->msg_callback == NULL)
+ return;
+
+ tls13_handshake_msg_data(ctx->hs_msg, &cbs);
+ s->internal->msg_callback(0, TLS1_3_VERSION, SSL3_RT_HANDSHAKE,
+ CBS_data(&cbs), CBS_len(&cbs), s, s->internal->msg_callback_arg);
}
static void
-tls13_legacy_handshake_message_sent_cb(void *arg, CBS *cbs)
+tls13_legacy_handshake_message_sent_cb(void *arg)
{
struct tls13_ctx *ctx = arg;
SSL *s = ctx->ssl;
+ CBS cbs;
+
+ if (s->internal->msg_callback == NULL)
+ return;
- if (s->internal->msg_callback != NULL)
- s->internal->msg_callback(1, TLS1_3_VERSION, SSL3_RT_HANDSHAKE,
- CBS_data(cbs), CBS_len(cbs), s,
- s->internal->msg_callback_arg);
+ tls13_handshake_msg_data(ctx->hs_msg, &cbs);
+ s->internal->msg_callback(1, TLS1_3_VERSION, SSL3_RT_HANDSHAKE,
+ CBS_data(&cbs), CBS_len(&cbs), s, s->internal->msg_callback_arg);
}
static int