aboutsummaryrefslogtreecommitdiff
path: root/crypto/openssl/ssl/record/record_local.h
diff options
context:
space:
mode:
authorJohn Baldwin <jhb@FreeBSD.org>2021-01-16 00:17:31 +0000
committerJohn Baldwin <jhb@FreeBSD.org>2021-02-05 00:03:20 +0000
commitc1c52cd57e8810ca294d02220dfa72607c9a5567 (patch)
treedc0c5c4b959c9ac187795f0e274de29fb9bfa097 /crypto/openssl/ssl/record/record_local.h
parentfa3b2ad265d311191c1c8337bf3aa356f28480cb (diff)
downloadsrc-c1c52cd57e8810ca294d02220dfa72607c9a5567.tar.gz
src-c1c52cd57e8810ca294d02220dfa72607c9a5567.zip
OpenSSL: Support for kernel TLS offload (KTLS)
This merges upstream patches from OpenSSL's master branch to add KTLS infrastructure for TLS 1.0-1.3 including both RX and TX offload and SSL_sendfile support on both Linux and FreeBSD. Note that TLS 1.3 only supports TX offload. A new WITH/WITHOUT_OPENSSL_KTLS determines if OpenSSL is built with KTLS support. It defaults to enabled on amd64 and disabled on all other architectures. Sponsored by: Netflix (cherry picked from commit aa906e2a4957db700d9e6cc60857e1afe1aecc85)
Diffstat (limited to 'crypto/openssl/ssl/record/record_local.h')
-rw-r--r--crypto/openssl/ssl/record/record_local.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/crypto/openssl/ssl/record/record_local.h b/crypto/openssl/ssl/record/record_local.h
index 5e8dd7f70442..4760eeb7d88b 100644
--- a/crypto/openssl/ssl/record/record_local.h
+++ b/crypto/openssl/ssl/record/record_local.h
@@ -65,6 +65,8 @@ void dtls1_record_bitmap_update(SSL *s, DTLS1_BITMAP *bitmap);
#define SSL3_BUFFER_add_offset(b, o) ((b)->offset += (o))
#define SSL3_BUFFER_is_initialised(b) ((b)->buf != NULL)
#define SSL3_BUFFER_set_default_len(b, l) ((b)->default_len = (l))
+#define SSL3_BUFFER_set_app_buffer(b, l) ((b)->app_buffer = (l))
+#define SSL3_BUFFER_is_app_buffer(b) ((b)->app_buffer)
void SSL3_BUFFER_clear(SSL3_BUFFER *b);
void SSL3_BUFFER_set_data(SSL3_BUFFER *b, const unsigned char *d, size_t n);
@@ -88,6 +90,7 @@ int ssl3_release_write_buffer(SSL *s);
#define SSL3_RECORD_get_input(r) ((r)->input)
#define SSL3_RECORD_set_input(r, i) ((r)->input = (i))
#define SSL3_RECORD_reset_input(r) ((r)->input = (r)->data)
+#define SSL3_RECORD_reset_data(r) ((r)->data = (r)->input)
#define SSL3_RECORD_get_seq_num(r) ((r)->seq_num)
#define SSL3_RECORD_get_off(r) ((r)->off)
#define SSL3_RECORD_set_off(r, o) ((r)->off = (o))