Add a ktls_crypto_info_t typedef.

This type is defined to hold the OS-specific structure passed to
BIO_set_ktls.

Reviewed-by: Tomas Mraz <tmraz@fedoraproject.org>
Reviewed-by: Matt Caswell <matt@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/12111)
This commit is contained in:
John Baldwin 2020-07-24 13:47:35 -07:00 committed by Matt Caswell
parent 23e77b0ba3
commit c34ca13a60
3 changed files with 8 additions and 5 deletions

View File

@ -37,6 +37,8 @@
*/
# define TLS_CIPHER_AES_GCM_128_REC_SEQ_SIZE 8
typedef struct tls_enable ktls_crypto_info_t;
/*
* FreeBSD does not require any additional steps to enable KTLS before
* setting keys.
@ -173,6 +175,9 @@ struct tls_crypto_info_all {
};
size_t tls_crypto_info_len;
};
typedef struct tls_crypto_info_all ktls_crypto_info_t;
/*
* When successful, this socket option doesn't change the behaviour of the
* TCP socket, except changing the TCP setsockopt handler to enable the

View File

@ -192,10 +192,8 @@ int tls1_change_cipher_state(SSL *s, int which)
size_t n, i, j, k, cl;
int reuse_dd = 0;
#ifndef OPENSSL_NO_KTLS
# ifdef __FreeBSD__
struct tls_enable crypto_info;
# else
struct tls_crypto_info_all crypto_info;
ktls_crypto_info_t crypto_info;
# ifndef __FreeBSD__
unsigned char *rec_seq;
void *rl_sequence;
# ifndef OPENSSL_NO_KTLS_RX

View File

@ -517,7 +517,7 @@ int tls13_change_cipher_state(SSL *s, int which)
const EVP_CIPHER *cipher = NULL;
#if !defined(OPENSSL_NO_KTLS) && defined(OPENSSL_KTLS_TLS13)
# ifndef __FreeBSD__
struct tls_crypto_info_all crypto_info;
ktls_crypto_info_t crypto_info;
BIO *bio;
# endif
#endif