summaryrefslogtreecommitdiff
path: root/src/lib/libssl/tls13_record_layer.c
diff options
context:
space:
mode:
authorjsing <>2019-11-18 02:44:20 +0000
committerjsing <>2019-11-18 02:44:20 +0000
commitd29c2aa42ff08eae9d602f68ded7137c5fc198b7 (patch)
treedcc8866cbf81ac5c1b835c9fd0bdc702dc8029ed /src/lib/libssl/tls13_record_layer.c
parent34c3a0b06b3b47e9a51dc4ba51a5aef8bb2e5004 (diff)
downloadopenbsd-d29c2aa42ff08eae9d602f68ded7137c5fc198b7.tar.gz
openbsd-d29c2aa42ff08eae9d602f68ded7137c5fc198b7.tar.bz2
openbsd-d29c2aa42ff08eae9d602f68ded7137c5fc198b7.zip
Provide a clean interface for sending TLSv1.3 alerts.
ok beck@
Diffstat (limited to 'src/lib/libssl/tls13_record_layer.c')
-rw-r--r--src/lib/libssl/tls13_record_layer.c16
1 files changed, 14 insertions, 2 deletions
diff --git a/src/lib/libssl/tls13_record_layer.c b/src/lib/libssl/tls13_record_layer.c
index ebefac0a25..188f56e0b4 100644
--- a/src/lib/libssl/tls13_record_layer.c
+++ b/src/lib/libssl/tls13_record_layer.c
@@ -1,4 +1,4 @@
1/* $OpenBSD: tls13_record_layer.c,v 1.14 2019/11/17 21:47:01 jsing Exp $ */ 1/* $OpenBSD: tls13_record_layer.c,v 1.15 2019/11/18 02:44:20 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 *
@@ -328,7 +328,7 @@ tls13_record_layer_send_pending(struct tls13_record_layer *rl)
328 return TLS13_IO_SUCCESS; 328 return TLS13_IO_SUCCESS;
329} 329}
330 330
331ssize_t 331static ssize_t
332tls13_record_layer_alert(struct tls13_record_layer *rl, 332tls13_record_layer_alert(struct tls13_record_layer *rl,
333 uint8_t alert_level, uint8_t alert_desc) 333 uint8_t alert_level, uint8_t alert_desc)
334{ 334{
@@ -967,3 +967,15 @@ tls13_write_application_data(struct tls13_record_layer *rl, const uint8_t *buf,
967 967
968 return tls13_record_layer_write(rl, SSL3_RT_APPLICATION_DATA, buf, n); 968 return tls13_record_layer_write(rl, SSL3_RT_APPLICATION_DATA, buf, n);
969} 969}
970
971ssize_t
972tls13_send_alert(struct tls13_record_layer *rl, uint8_t alert_desc)
973{
974 uint8_t alert_level = SSL3_AL_FATAL;
975
976 if (alert_desc == SSL_AD_CLOSE_NOTIFY ||
977 alert_desc == SSL_AD_USER_CANCELLED)
978 alert_level = SSL3_AL_WARNING;
979
980 return tls13_record_layer_alert(rl, alert_level, alert_desc);
981}