HomeFreeBSD

Handle CPL_RX_DATA on active TLS sockets.

Description

Handle CPL_RX_DATA on active TLS sockets.

In certain edge cases, the NIC might have only received a partial TLS
record which it needs to return to the driver. For example, if the
local socket was closed while data was still in flight, a partial TLS
record might be pending when the connection is closed. Receiving a
RST in the middle of a TLS record is another example. When this
happens, the firmware returns the the partial TLS record as plain TCP
data via CPL_RX_DATA. Handle these requests by returning an error to
OpenSSL (via so_error for KTLS or via an error TLS record header for
the older Chelsio OpenSSL interface).

Reported by: Sony Arpita Das @ Chelsio
Reviewed by: np
MFC after: 2 weeks
Sponsored by: Chelsio Communications
Differential Revision: Revision: https://reviews.freebsd.org/D26800

Details

Provenance
jhbAuthored on Oct 23 2020, 12:23 AM
Parents
rG7dbbd1aeaed9: Negotiate iSCSIProtocolLevel of 2 (RFC 7144) in initiator.
Branches
Unknown
Tags
Unknown

Event Timeline