[PATCH net-next v16 00/10] tls: Add TLS 1.3 hardware offload support

Rishikesh Jethwani <[email protected]>
Newsgroups org.kernel.vger.netdev
Message-ID <[email protected]>
Hi all,

  This series adds TLS 1.3 hardware offload support including KeyUpdate
  (rekey) and a selftest for validation.

  Patch 1: Reject TLS 1.3 offload in chcr_ktls and nfp drivers
    These drivers only support TLS 1.2; add explicit version check.

  Patch 2: mlx5e TLS 1.3 hardware offload
    Add TLS 1.3 TX/RX offload on ConnectX-6 Dx and newer.
    Handle 12-byte IV format and TLS_1_3 context type.

  Patch 3: tls: reject rekey attempts on an existing HW-offloaded connection
    Prep for the following patch ("tls: add TLS 1.3 hardware offload
    support")

  Patch 4: tls: add TLS 1.3 hardware offload support
    Extend tls_device.c for TLS 1.3 record format (content type
    appended before tag). Handle TLS 1.3 IV construction in fallback.

  Patch 5: Split tls_set_sw_offload into init/finalize

  Patch 6: Prep helpers and refactors for HW offload KeyUpdate

  Patch 7: TX KeyUpdate support

  Patch 8: RX KeyUpdate support

  Patch 9: Tracepoints for RX KeyUpdate path

  Patch 10: Selftest for hardware offload

Rishikesh

Changes in v16:
  - Addressed review comments

Rishikesh Jethwani (10):
  net: tls: reject TLS 1.3 offload in chcr_ktls and nfp drivers
  net/mlx5e: add TLS 1.3 hardware offload support
  tls: reject rekey attempts on an existing HW-offloaded connection
  tls: add TLS 1.3 hardware offload support
  tls: split tls_set_sw_offload into init and finalize stages
  tls: prep helpers and refactors for HW offload KeyUpdate
  tls: device: add TX KeyUpdate support
  tls: device: add RX KeyUpdate support
  tls: device: add tracepoints for the KeyUpdate path
  selftests: net: add TLS hardware offload test

 MAINTAINERS                                   |   2 +
 .../chelsio/inline_crypto/ch_ktls/chcr_ktls.c |   3 +
 .../mellanox/mlx5/core/en_accel/ktls.c        |  10 +
 .../mellanox/mlx5/core/en_accel/ktls.h        |   8 +-
 .../mellanox/mlx5/core/en_accel/ktls_txrx.c   |  14 +-
 .../net/ethernet/netronome/nfp/crypto/tls.c   |   3 +
 include/net/tls.h                             | 104 +-
 include/uapi/linux/snmp.h                     |   6 +
 net/tls/tls.h                                 |  24 +-
 net/tls/tls_device.c                          | 955 +++++++++++++++--
 net/tls/tls_device_fallback.c                 |  82 +-
 net/tls/tls_main.c                            |  77 +-
 net/tls/tls_proc.c                            |   6 +
 net/tls/tls_sw.c                              | 167 ++-
 net/tls/trace.h                               |  98 ++
 .../selftests/drivers/net/hw/.gitignore       |   1 +
 .../testing/selftests/drivers/net/hw/Makefile |   2 +
 .../selftests/drivers/net/hw/tls_hw_offload.c | 975 ++++++++++++++++++
 .../drivers/net/hw/tls_hw_offload.py          | 295 ++++++
 19 files changed, 2613 insertions(+), 219 deletions(-)
 create mode 100644 tools/testing/selftests/drivers/net/hw/tls_hw_offload.c
 create mode 100755 tools/testing/selftests/drivers/net/hw/tls_hw_offload.py

-- 
2.25.1
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.