freebsd-nq/sys/dev/cxgbe
John Baldwin 4361c4eb6e cryptosoft: Fix support for variable tag lengths in AES-CCM.
The tag length is included as one of the values in the flags byte of
block 0 passed to CBC_MAC, so merely copying the first N bytes is
insufficient.

To avoid adding more sideband data to the CBC MAC software context,
pull the generation of block 0, the AAD length, and AAD padding out of
cbc_mac.c and into cryptosoft.c.  This matches how GCM/GMAC are
handled where the length block is constructed in cryptosoft.c and
passed as an input to the Update callback.  As a result, the CBC MAC
Update() routine is now much simpler and simply performs the
XOR-and-encrypt step on each input block.

While here, avoid a copy to the staging block in the Update routine
when one or more full blocks are passed as input to the Update
callback.

Reviewed by:	sef
Sponsored by:	The FreeBSD Foundation
Differential Revision:	https://reviews.freebsd.org/D32120
2021-10-06 14:08:48 -07:00
..
common cxgbe(4): Display HMA information in meminfo. 2021-09-07 16:05:33 -07:00
crypto cryptosoft: Fix support for variable tag lengths in AES-CCM. 2021-10-06 14:08:48 -07:00
cudbg Fix some common typos in source code comments 2021-08-28 18:57:23 +02:00
cxgbei cxgbei: Only convert "plain" TCP connections to ISCSI. 2021-09-13 09:57:54 -07:00
firmware cxgbe(4): Update firmwares to 1.26.2.0. 2021-09-27 23:52:51 -07:00
iw_cxgbe ibcore: Kernel space update based on Linux 5.7-rc1. 2021-07-28 13:28:29 +02:00
tom cxgbe tom: Enter network epoch in t4_aiotx_task(). 2021-09-14 13:46:15 -07:00
adapter.h Add a switch structure for send tags. 2021-09-14 11:43:41 -07:00
if_cc.c
if_ccv.c
if_cxl.c
if_cxlv.c
offload.h cxgbei: Support for ISO (iSCSI segmentation offload). 2021-08-06 14:21:37 -07:00
osdep.h cxgbe(4): make the logging helpers a little more robust. 2021-04-22 15:28:43 -07:00
t4_clip.c cxgbe(4): Empty the clib_db before trying to destroy it. 2021-06-04 12:01:14 -07:00
t4_clip.h cxgbe(4): Overhaul CLIP (Compressed Local IPv6) table management. 2021-05-23 16:07:29 -07:00
t4_filter.c cxgbe(4): Add support for NIC suspend/resume and live reset. 2021-04-27 22:48:51 -07:00
t4_if.m
t4_ioctl.h cxgbe(4): Overhaul CLIP (Compressed Local IPv6) table management. 2021-05-23 16:07:29 -07:00
t4_iov.c cxgbe(4): Allow the PF driver to set a VF's MAC address. 2020-11-09 00:08:35 +00:00
t4_l2t.c NIC KTLS for Chelsio T6 adapters. 2019-11-21 19:30:31 +00:00
t4_l2t.h NIC KTLS for Chelsio T6 adapters. 2019-11-21 19:30:31 +00:00
t4_main.c Add a switch structure for send tags. 2021-09-14 11:43:41 -07:00
t4_mp_ring.c cxgbe(4): changes in the Tx path to help increase tx coalescing. 2020-07-03 04:44:23 +00:00
t4_mp_ring.h cxgbe(4): changes in the Tx path to help increase tx coalescing. 2020-07-03 04:44:23 +00:00
t4_netmap.c cxgbe(4): Separate the sw- and hw-specific parts of resource allocations 2021-04-26 14:09:59 -07:00
t4_sched.c Add a switch structure for send tags. 2021-09-14 11:43:41 -07:00
t4_sge.c cxgbe: Mark received packets as initialized for KMSAN 2021-09-24 14:37:05 -04:00
t4_smt.c
t4_smt.h
t4_tracer.c cxgbe(4): Add support for NIC suspend/resume and live reset. 2021-04-27 22:48:51 -07:00
t4_vf.c cxgbe(4): Break up t4_read_chip_settings. 2021-02-18 01:22:42 -08:00