tls_context
Regular
4.4
: Absent ⚠️
4.8
: Absent ⚠️
4.10
: Absent ⚠️
4.13
: Absent ⚠️
4.15
: Absent ⚠️
4.18
: Absent ⚠️
5.0
: ✅struct tls_context {
union tls_crypto_context crypto_send;
union tls_crypto_context crypto_recv;
struct list_head list;
struct net_device *netdev;
refcount_t refcount;
void *priv_ctx_tx;
void *priv_ctx_rx;
u8 tx_conf;
u8 rx_conf;
struct cipher_context tx;
struct cipher_context rx;
struct scatterlist *partially_sent_record;
u16 partially_sent_offset;
long unsigned int flags;
bool in_tcp_sendpages;
bool pending_open_record_frags;
int (*push_pending_record)(struct sock *, int);
void (*sk_write_space)(struct sock *);
void (*sk_destruct)(struct sock *);
void (*sk_proto_close)(struct sock *, long int);
int (*setsockopt)(struct sock *, int, int, char *, unsigned int);
int (*getsockopt)(struct sock *, int, int, char *, int *);
int (*hash)(struct sock *);
void (*unhash)(struct sock *);
};
5.3
: ✅struct tls_context {
struct tls_prot_info prot_info;
u8 tx_conf;
u8 rx_conf;
int (*push_pending_record)(struct sock *, int);
void (*sk_write_space)(struct sock *);
void *priv_ctx_tx;
void *priv_ctx_rx;
struct net_device *netdev;
struct cipher_context tx;
struct cipher_context rx;
struct scatterlist *partially_sent_record;
u16 partially_sent_offset;
bool in_tcp_sendpages;
bool pending_open_record_frags;
long unsigned int flags;
struct proto *sk_proto;
void (*sk_destruct)(struct sock *);
void (*sk_proto_close)(struct sock *, long int);
int (*setsockopt)(struct sock *, int, int, char *, unsigned int);
int (*getsockopt)(struct sock *, int, int, char *, int *);
int (*hash)(struct sock *);
void (*unhash)(struct sock *);
union tls_crypto_context crypto_send;
union tls_crypto_context crypto_recv;
struct list_head list;
refcount_t refcount;
};
5.4
: ✅struct tls_context {
struct tls_prot_info prot_info;
u8 tx_conf;
u8 rx_conf;
int (*push_pending_record)(struct sock *, int);
void (*sk_write_space)(struct sock *);
void *priv_ctx_tx;
void *priv_ctx_rx;
struct net_device *netdev;
struct cipher_context tx;
struct cipher_context rx;
struct scatterlist *partially_sent_record;
u16 partially_sent_offset;
bool in_tcp_sendpages;
bool pending_open_record_frags;
struct mutex tx_lock;
long unsigned int flags;
struct proto *sk_proto;
void (*sk_destruct)(struct sock *);
union tls_crypto_context crypto_send;
union tls_crypto_context crypto_recv;
struct list_head list;
refcount_t refcount;
struct callback_head rcu;
};
5.8
: ✅struct tls_context {
struct tls_prot_info prot_info;
u8 tx_conf;
u8 rx_conf;
int (*push_pending_record)(struct sock *, int);
void (*sk_write_space)(struct sock *);
void *priv_ctx_tx;
void *priv_ctx_rx;
struct net_device *netdev;
struct cipher_context tx;
struct cipher_context rx;
struct scatterlist *partially_sent_record;
u16 partially_sent_offset;
bool in_tcp_sendpages;
bool pending_open_record_frags;
struct mutex tx_lock;
long unsigned int flags;
struct proto *sk_proto;
void (*sk_destruct)(struct sock *);
union tls_crypto_context crypto_send;
union tls_crypto_context crypto_recv;
struct list_head list;
refcount_t refcount;
struct callback_head rcu;
};
5.11
: ✅struct tls_context {
struct tls_prot_info prot_info;
u8 tx_conf;
u8 rx_conf;
int (*push_pending_record)(struct sock *, int);
void (*sk_write_space)(struct sock *);
void *priv_ctx_tx;
void *priv_ctx_rx;
struct net_device *netdev;
struct cipher_context tx;
struct cipher_context rx;
struct scatterlist *partially_sent_record;
u16 partially_sent_offset;
bool in_tcp_sendpages;
bool pending_open_record_frags;
struct mutex tx_lock;
long unsigned int flags;
struct proto *sk_proto;
void (*sk_destruct)(struct sock *);
union tls_crypto_context crypto_send;
union tls_crypto_context crypto_recv;
struct list_head list;
refcount_t refcount;
struct callback_head rcu;
};
5.13
: ✅struct tls_context {
struct tls_prot_info prot_info;
u8 tx_conf;
u8 rx_conf;
int (*push_pending_record)(struct sock *, int);
void (*sk_write_space)(struct sock *);
void *priv_ctx_tx;
void *priv_ctx_rx;
struct net_device *netdev;
struct cipher_context tx;
struct cipher_context rx;
struct scatterlist *partially_sent_record;
u16 partially_sent_offset;
bool in_tcp_sendpages;
bool pending_open_record_frags;
struct mutex tx_lock;
long unsigned int flags;
struct proto *sk_proto;
struct sock *sk;
void (*sk_destruct)(struct sock *);
union tls_crypto_context crypto_send;
union tls_crypto_context crypto_recv;
struct list_head list;
refcount_t refcount;
struct callback_head rcu;
};
5.15
: ✅struct tls_context {
struct tls_prot_info prot_info;
u8 tx_conf;
u8 rx_conf;
int (*push_pending_record)(struct sock *, int);
void (*sk_write_space)(struct sock *);
void *priv_ctx_tx;
void *priv_ctx_rx;
struct net_device *netdev;
struct cipher_context tx;
struct cipher_context rx;
struct scatterlist *partially_sent_record;
u16 partially_sent_offset;
bool in_tcp_sendpages;
bool pending_open_record_frags;
struct mutex tx_lock;
long unsigned int flags;
struct proto *sk_proto;
struct sock *sk;
void (*sk_destruct)(struct sock *);
union tls_crypto_context crypto_send;
union tls_crypto_context crypto_recv;
struct list_head list;
refcount_t refcount;
struct callback_head rcu;
};
5.19
: ✅struct tls_context {
struct tls_prot_info prot_info;
u8 tx_conf;
u8 rx_conf;
u8 zerocopy_sendfile;
int (*push_pending_record)(struct sock *, int);
void (*sk_write_space)(struct sock *);
void *priv_ctx_tx;
void *priv_ctx_rx;
struct net_device *netdev;
struct cipher_context tx;
struct cipher_context rx;
struct scatterlist *partially_sent_record;
u16 partially_sent_offset;
bool in_tcp_sendpages;
bool pending_open_record_frags;
struct mutex tx_lock;
long unsigned int flags;
struct proto *sk_proto;
struct sock *sk;
void (*sk_destruct)(struct sock *);
union tls_crypto_context crypto_send;
union tls_crypto_context crypto_recv;
struct list_head list;
refcount_t refcount;
struct callback_head rcu;
};
6.2
: ✅struct tls_context {
struct tls_prot_info prot_info;
u8 tx_conf;
u8 rx_conf;
u8 zerocopy_sendfile;
u8 rx_no_pad;
int (*push_pending_record)(struct sock *, int);
void (*sk_write_space)(struct sock *);
void *priv_ctx_tx;
void *priv_ctx_rx;
struct net_device *netdev;
struct cipher_context tx;
struct cipher_context rx;
struct scatterlist *partially_sent_record;
u16 partially_sent_offset;
bool in_tcp_sendpages;
bool pending_open_record_frags;
struct mutex tx_lock;
long unsigned int flags;
struct proto *sk_proto;
struct sock *sk;
void (*sk_destruct)(struct sock *);
union tls_crypto_context crypto_send;
union tls_crypto_context crypto_recv;
struct list_head list;
refcount_t refcount;
struct callback_head rcu;
};
6.5
: ✅struct tls_context {
struct tls_prot_info prot_info;
u8 tx_conf;
u8 rx_conf;
u8 zerocopy_sendfile;
u8 rx_no_pad;
int (*push_pending_record)(struct sock *, int);
void (*sk_write_space)(struct sock *);
void *priv_ctx_tx;
void *priv_ctx_rx;
struct net_device *netdev;
struct cipher_context tx;
struct cipher_context rx;
struct scatterlist *partially_sent_record;
u16 partially_sent_offset;
bool splicing_pages;
bool pending_open_record_frags;
struct mutex tx_lock;
long unsigned int flags;
struct proto *sk_proto;
struct sock *sk;
void (*sk_destruct)(struct sock *);
union tls_crypto_context crypto_send;
union tls_crypto_context crypto_recv;
struct list_head list;
refcount_t refcount;
struct callback_head rcu;
};
6.8
: ✅struct tls_context {
struct tls_prot_info prot_info;
u8 tx_conf;
u8 rx_conf;
u8 zerocopy_sendfile;
u8 rx_no_pad;
int (*push_pending_record)(struct sock *, int);
void (*sk_write_space)(struct sock *);
void *priv_ctx_tx;
void *priv_ctx_rx;
struct net_device *netdev;
struct cipher_context tx;
struct cipher_context rx;
struct scatterlist *partially_sent_record;
u16 partially_sent_offset;
bool splicing_pages;
bool pending_open_record_frags;
struct mutex tx_lock;
long unsigned int flags;
struct proto *sk_proto;
struct sock *sk;
void (*sk_destruct)(struct sock *);
union tls_crypto_context crypto_send;
union tls_crypto_context crypto_recv;
struct list_head list;
refcount_t refcount;
struct callback_head rcu;
};
arm64
: ✅struct tls_context {
struct tls_prot_info prot_info;
u8 tx_conf;
u8 rx_conf;
int (*push_pending_record)(struct sock *, int);
void (*sk_write_space)(struct sock *);
void *priv_ctx_tx;
void *priv_ctx_rx;
struct net_device *netdev;
struct cipher_context tx;
struct cipher_context rx;
struct scatterlist *partially_sent_record;
u16 partially_sent_offset;
bool in_tcp_sendpages;
bool pending_open_record_frags;
struct mutex tx_lock;
long unsigned int flags;
struct proto *sk_proto;
void (*sk_destruct)(struct sock *);
union tls_crypto_context crypto_send;
union tls_crypto_context crypto_recv;
struct list_head list;
refcount_t refcount;
struct callback_head rcu;
};
armhf
: ✅struct tls_context {
struct tls_prot_info prot_info;
u8 tx_conf;
u8 rx_conf;
int (*push_pending_record)(struct sock *, int);
void (*sk_write_space)(struct sock *);
void *priv_ctx_tx;
void *priv_ctx_rx;
struct net_device *netdev;
struct cipher_context tx;
struct cipher_context rx;
struct scatterlist *partially_sent_record;
u16 partially_sent_offset;
bool in_tcp_sendpages;
bool pending_open_record_frags;
struct mutex tx_lock;
long unsigned int flags;
struct proto *sk_proto;
void (*sk_destruct)(struct sock *);
union tls_crypto_context crypto_send;
union tls_crypto_context crypto_recv;
struct list_head list;
refcount_t refcount;
struct callback_head rcu;
};
ppc64el
: ✅struct tls_context {
struct tls_prot_info prot_info;
u8 tx_conf;
u8 rx_conf;
int (*push_pending_record)(struct sock *, int);
void (*sk_write_space)(struct sock *);
void *priv_ctx_tx;
void *priv_ctx_rx;
struct net_device *netdev;
struct cipher_context tx;
struct cipher_context rx;
struct scatterlist *partially_sent_record;
u16 partially_sent_offset;
bool in_tcp_sendpages;
bool pending_open_record_frags;
struct mutex tx_lock;
long unsigned int flags;
struct proto *sk_proto;
void (*sk_destruct)(struct sock *);
union tls_crypto_context crypto_send;
union tls_crypto_context crypto_recv;
struct list_head list;
refcount_t refcount;
struct callback_head rcu;
};
riscv64
: ✅struct tls_context {
struct tls_prot_info prot_info;
u8 tx_conf;
u8 rx_conf;
int (*push_pending_record)(struct sock *, int);
void (*sk_write_space)(struct sock *);
void *priv_ctx_tx;
void *priv_ctx_rx;
struct net_device *netdev;
struct cipher_context tx;
struct cipher_context rx;
struct scatterlist *partially_sent_record;
u16 partially_sent_offset;
bool in_tcp_sendpages;
bool pending_open_record_frags;
struct mutex tx_lock;
long unsigned int flags;
struct proto *sk_proto;
void (*sk_destruct)(struct sock *);
union tls_crypto_context crypto_send;
union tls_crypto_context crypto_recv;
struct list_head list;
refcount_t refcount;
struct callback_head rcu;
};
aws
: ✅struct tls_context {
struct tls_prot_info prot_info;
u8 tx_conf;
u8 rx_conf;
int (*push_pending_record)(struct sock *, int);
void (*sk_write_space)(struct sock *);
void *priv_ctx_tx;
void *priv_ctx_rx;
struct net_device *netdev;
struct cipher_context tx;
struct cipher_context rx;
struct scatterlist *partially_sent_record;
u16 partially_sent_offset;
bool in_tcp_sendpages;
bool pending_open_record_frags;
struct mutex tx_lock;
long unsigned int flags;
struct proto *sk_proto;
void (*sk_destruct)(struct sock *);
union tls_crypto_context crypto_send;
union tls_crypto_context crypto_recv;
struct list_head list;
refcount_t refcount;
struct callback_head rcu;
};
azure
: ✅struct tls_context {
struct tls_prot_info prot_info;
u8 tx_conf;
u8 rx_conf;
int (*push_pending_record)(struct sock *, int);
void (*sk_write_space)(struct sock *);
void *priv_ctx_tx;
void *priv_ctx_rx;
struct net_device *netdev;
struct cipher_context tx;
struct cipher_context rx;
struct scatterlist *partially_sent_record;
u16 partially_sent_offset;
bool in_tcp_sendpages;
bool pending_open_record_frags;
struct mutex tx_lock;
long unsigned int flags;
struct proto *sk_proto;
void (*sk_destruct)(struct sock *);
union tls_crypto_context crypto_send;
union tls_crypto_context crypto_recv;
struct list_head list;
refcount_t refcount;
struct callback_head rcu;
};
gcp
: ✅struct tls_context {
struct tls_prot_info prot_info;
u8 tx_conf;
u8 rx_conf;
int (*push_pending_record)(struct sock *, int);
void (*sk_write_space)(struct sock *);
void *priv_ctx_tx;
void *priv_ctx_rx;
struct net_device *netdev;
struct cipher_context tx;
struct cipher_context rx;
struct scatterlist *partially_sent_record;
u16 partially_sent_offset;
bool in_tcp_sendpages;
bool pending_open_record_frags;
struct mutex tx_lock;
long unsigned int flags;
struct proto *sk_proto;
void (*sk_destruct)(struct sock *);
union tls_crypto_context crypto_send;
union tls_crypto_context crypto_recv;
struct list_head list;
refcount_t refcount;
struct callback_head rcu;
};
lowlatency
: ✅struct tls_context {
struct tls_prot_info prot_info;
u8 tx_conf;
u8 rx_conf;
int (*push_pending_record)(struct sock *, int);
void (*sk_write_space)(struct sock *);
void *priv_ctx_tx;
void *priv_ctx_rx;
struct net_device *netdev;
struct cipher_context tx;
struct cipher_context rx;
struct scatterlist *partially_sent_record;
u16 partially_sent_offset;
bool in_tcp_sendpages;
bool pending_open_record_frags;
struct mutex tx_lock;
long unsigned int flags;
struct proto *sk_proto;
void (*sk_destruct)(struct sock *);
union tls_crypto_context crypto_send;
union tls_crypto_context crypto_recv;
struct list_head list;
refcount_t refcount;
struct callback_head rcu;
};
Regular
5.0
and 5.3
⚠️struct tls_prot_info prot_info
struct proto *sk_proto
5.3
and 5.4
⚠️struct mutex tx_lock
struct callback_head rcu
void (*sk_proto_close)(struct sock *, long int)
int (*setsockopt)(struct sock *, int, int, char *, unsigned int)
int (*getsockopt)(struct sock *, int, int, char *, int *)
int (*hash)(struct sock *)
void (*unhash)(struct sock *)
5.4
and 5.8
✅
5.8
and 5.11
✅
5.11
and 5.13
⚠️struct sock *sk
5.13
and 5.15
✅
5.15
and 5.19
⚠️u8 zerocopy_sendfile
5.19
and 6.2
⚠️u8 rx_no_pad
6.2
and 6.5
⚠️bool splicing_pages
bool in_tcp_sendpages
6.5
and 6.8
✅
amd64
and arm64
✅
amd64
and armhf
✅
amd64
and ppc64el
✅
amd64
and riscv64
✅
generic
and aws
✅
generic
and azure
✅
generic
and gcp
✅
generic
and lowlatency
✅