summaryrefslogtreecommitdiff
path: root/src/lib/libssl/tls13_internal.h
diff options
context:
space:
mode:
authorjsing <>2020-01-22 01:02:28 +0000
committerjsing <>2020-01-22 01:02:28 +0000
commitd2535f6d6c56956061dc8da2a8a2bfdd6b98a0a4 (patch)
tree8f321cdd5e9030d317130115bbb253896e4ea0f2 /src/lib/libssl/tls13_internal.h
parent6e568c664abbc564bc3a97d549d37155632d79a5 (diff)
downloadopenbsd-d2535f6d6c56956061dc8da2a8a2bfdd6b98a0a4.tar.gz
openbsd-d2535f6d6c56956061dc8da2a8a2bfdd6b98a0a4.tar.bz2
openbsd-d2535f6d6c56956061dc8da2a8a2bfdd6b98a0a4.zip
Implement close-notify and SSL_shutdown() handling for the TLSv1.3 client.
ok beck@ inoguchi@ tb@
Diffstat (limited to 'src/lib/libssl/tls13_internal.h')
-rw-r--r--src/lib/libssl/tls13_internal.h7
1 files changed, 6 insertions, 1 deletions
diff --git a/src/lib/libssl/tls13_internal.h b/src/lib/libssl/tls13_internal.h
index 3ee73782ec..7fee37f5dd 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.39 2020/01/21 12:08:04 jsing Exp $ */ 1/* $OpenBSD: tls13_internal.h,v 1.40 2020/01/22 01:02:28 jsing 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>
@@ -126,6 +126,7 @@ int tls13_record_layer_set_read_traffic_key(struct tls13_record_layer *rl,
126 struct tls13_secret *read_key); 126 struct tls13_secret *read_key);
127int tls13_record_layer_set_write_traffic_key(struct tls13_record_layer *rl, 127int tls13_record_layer_set_write_traffic_key(struct tls13_record_layer *rl,
128 struct tls13_secret *write_key); 128 struct tls13_secret *write_key);
129ssize_t tls13_record_layer_send_pending(struct tls13_record_layer *rl);
129ssize_t tls13_record_layer_phh(struct tls13_record_layer *rl, CBS *cbs); 130ssize_t tls13_record_layer_phh(struct tls13_record_layer *rl, CBS *cbs);
130 131
131ssize_t tls13_read_handshake_data(struct tls13_record_layer *rl, uint8_t *buf, size_t n); 132ssize_t tls13_read_handshake_data(struct tls13_record_layer *rl, uint8_t *buf, size_t n);
@@ -181,6 +182,9 @@ struct tls13_ctx {
181 struct tls13_handshake_stage handshake_stage; 182 struct tls13_handshake_stage handshake_stage;
182 int handshake_completed; 183 int handshake_completed;
183 184
185 int close_notify_sent;
186 int close_notify_recv;
187
184 const EVP_AEAD *aead; 188 const EVP_AEAD *aead;
185 const EVP_MD *hash; 189 const EVP_MD *hash;
186 190
@@ -215,6 +219,7 @@ ssize_t tls13_legacy_wire_write_cb(const void *buf, size_t n, void *arg);
215int tls13_legacy_read_bytes(SSL *ssl, int type, unsigned char *buf, int len, 219int tls13_legacy_read_bytes(SSL *ssl, int type, unsigned char *buf, int len,
216 int peek); 220 int peek);
217int tls13_legacy_write_bytes(SSL *ssl, int type, const void *buf, int len); 221int tls13_legacy_write_bytes(SSL *ssl, int type, const void *buf, int len);
222int tls13_legacy_shutdown(SSL *ssl);
218 223
219/* 224/*
220 * Message Types - RFC 8446, Section B.3. 225 * Message Types - RFC 8446, Section B.3.