HomeFreeBSD

Add a TOE KTLS mode and a TOE hook for allocating TLS sessions.

Description

Add a TOE KTLS mode and a TOE hook for allocating TLS sessions.

This adds the glue to allocate TLS sessions and invokes it from
the TLS enable socket option handler. This also adds some counters
for active TOE sessions.

The TOE KTLS mode is returned by getsockopt(TLSTX_TLS_MODE) when
TOE KTLS is in use on a socket, but cannot be set via setsockopt().

To simplify various checks, a TLS session now includes an explicit
'mode' member set to the value returned by TLSTX_TLS_MODE. Various
places that used to check 'sw_encrypt' against NULL to determine
software vs ifnet (NIC) TLS now check 'mode' instead.

Reviewed by: np, gallatin
Sponsored by: Chelsio Communications
Differential Revision: https://reviews.freebsd.org/D21891

Details

Provenance
jhbAuthored on
Reviewer
np
Differential Revision
D21891: Add support for KTLS via the TOE on Chelsio's T6 adapters.
Parents
rS353327: amd64: plug spurious cld instructions
Branches
Unknown
Tags
Unknown