diff options
Diffstat (limited to 'src/lib/libssl/tls13_lib.c')
| -rw-r--r-- | src/lib/libssl/tls13_lib.c | 29 |
1 files changed, 28 insertions, 1 deletions
diff --git a/src/lib/libssl/tls13_lib.c b/src/lib/libssl/tls13_lib.c index f17f2ff0de..950b5a4019 100644 --- a/src/lib/libssl/tls13_lib.c +++ b/src/lib/libssl/tls13_lib.c | |||
| @@ -1,4 +1,4 @@ | |||
| 1 | /* $OpenBSD: tls13_lib.c,v 1.29 2020/01/24 05:11:34 beck Exp $ */ | 1 | /* $OpenBSD: tls13_lib.c,v 1.30 2020/01/25 13:11:20 tb Exp $ */ |
| 2 | /* | 2 | /* |
| 3 | * Copyright (c) 2018, 2019 Joel Sing <jsing@openbsd.org> | 3 | * Copyright (c) 2018, 2019 Joel Sing <jsing@openbsd.org> |
| 4 | * Copyright (c) 2019 Bob Beck <beck@openbsd.org> | 4 | * Copyright (c) 2019 Bob Beck <beck@openbsd.org> |
| @@ -105,6 +105,30 @@ tls13_alert_received_cb(uint8_t alert_desc, void *arg) | |||
| 105 | SSL_CTX_remove_session(s->ctx, s->session); | 105 | SSL_CTX_remove_session(s->ctx, s->session); |
| 106 | } | 106 | } |
| 107 | 107 | ||
| 108 | static void | ||
| 109 | tls13_legacy_handshake_message_recv_cb(void *arg, CBS *cbs) | ||
| 110 | { | ||
| 111 | struct tls13_ctx *ctx = arg; | ||
| 112 | SSL *s = ctx->ssl; | ||
| 113 | |||
| 114 | if (s->internal->msg_callback != NULL) | ||
| 115 | s->internal->msg_callback(0, TLS1_3_VERSION, SSL3_RT_HANDSHAKE, | ||
| 116 | CBS_data(cbs), CBS_len(cbs), s, | ||
| 117 | s->internal->msg_callback_arg); | ||
| 118 | } | ||
| 119 | |||
| 120 | static void | ||
| 121 | tls13_legacy_handshake_message_sent_cb(void *arg, CBS *cbs) | ||
| 122 | { | ||
| 123 | struct tls13_ctx *ctx = arg; | ||
| 124 | SSL *s = ctx->ssl; | ||
| 125 | |||
| 126 | if (s->internal->msg_callback != NULL) | ||
| 127 | s->internal->msg_callback(1, TLS1_3_VERSION, SSL3_RT_HANDSHAKE, | ||
| 128 | CBS_data(cbs), CBS_len(cbs), s, | ||
| 129 | s->internal->msg_callback_arg); | ||
| 130 | } | ||
| 131 | |||
| 108 | static int | 132 | static int |
| 109 | tls13_phh_update_local_traffic_secret(struct tls13_ctx *ctx) | 133 | tls13_phh_update_local_traffic_secret(struct tls13_ctx *ctx) |
| 110 | { | 134 | { |
| @@ -263,6 +287,9 @@ tls13_ctx_new(int mode) | |||
| 263 | tls13_phh_received_cb, tls13_phh_done_cb, ctx)) == NULL) | 287 | tls13_phh_received_cb, tls13_phh_done_cb, ctx)) == NULL) |
| 264 | goto err; | 288 | goto err; |
| 265 | 289 | ||
| 290 | ctx->handshake_message_sent_cb = tls13_legacy_handshake_message_sent_cb; | ||
| 291 | ctx->handshake_message_recv_cb = tls13_legacy_handshake_message_recv_cb; | ||
| 292 | |||
| 266 | return ctx; | 293 | return ctx; |
| 267 | 294 | ||
| 268 | err: | 295 | err: |
