]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/commit
cxgbe tom: Remove support for non-KTLS TLS offload.
authorJohn Baldwin <jhb@FreeBSD.org>
Fri, 28 May 2021 23:49:56 +0000 (16:49 -0700)
committerJohn Baldwin <jhb@FreeBSD.org>
Fri, 11 Nov 2022 00:15:52 +0000 (16:15 -0800)
commit9395c3cd9611215ff40099162ae6ab16c99b9ba1
treef6a60524ce49ed29af2a1d9b7f8c2e833762a93b
parent72845ee316ec7e7976f2244cd0886071bb74d92e
cxgbe tom: Remove support for non-KTLS TLS offload.

TOE TLS offload was first supported via a customized OpenSSL developed
by Chelsio with proprietary socket options prior to KTLS being present
either in FreeBSD or upstream OpenSSL.  With the addition of KTLS in
both places, cxgbe's TOE driver was extended to support TLS offload
via KTLS as well.  This change removes the older interface leaving
only the KTLS bindings for TOE TLS.

Since KTLS was added to TOE TLS second, it was somehat shoe-horned
into the existing code.  In addition to removing the non-KTLS TLS
offload, refactor and simplify the code to assume KTLS, e.g. not
copying keys into a helper structure that mimic'ed the non-KTLS mode,
but using the KTLS session object directly when constructing key
contexts.

This also removes some unused code to send TX keys inline in work
requests for TOE TLS.  This code was never enabled, and was arguably
sending the wrong thing (it was not sending the raw key context as we
do for NIC TLS when using inline keys).

Sponsored by: Chelsio Communications

(cherry picked from commit 789f2d4b3f33d4414eaf0b4e7daef41e89d1b224)
sys/dev/cxgbe/tom/t4_cpl_io.c
sys/dev/cxgbe/tom/t4_tls.c
sys/dev/cxgbe/tom/t4_tls.h
sys/dev/cxgbe/tom/t4_tom.c
sys/dev/cxgbe/tom/t4_tom.h