mbox series

[v2,0/8] support PDCP-SDAP for dpaa2_sec

Message ID 20201011213403.21169-1-akhil.goyal@nxp.com (mailing list archive)
Headers show
Series support PDCP-SDAP for dpaa2_sec | expand


Akhil Goyal Oct. 11, 2020, 9:33 p.m. UTC
The SDAP is a protocol in the LTE stack on top of PDCP. It is
dedicated to QoS.

The difficulty of implementing this protocol is because the
PDCP change behavior regarding encryption and authentication
of the SDU it receives. In effect PDCP shall not encrypt the
SDAP SDU but must authenticate it (when encryption and
authentication is enabled).

A new field is added in the PDCP xform to specify SDAP is enabled.
The overall size of the xform is not changed, as hfn_ovrd is just
a flag and does not need uint32. Hence, it is converted to uint8_t
and a 16 bit reserved field is added for future.

The corresponding test cases and test vectors are added in the test

This patch need Techboard approval as there is a change in API
without a deprecation notice from last release.
This patch is required to support the upcoming development of
5GNR protocol - SDAP in near future. If the patch is not approved
in the current release, we may not be able to support SDAP for next
1 year which is not accceptable for the customers.

Changes in v2:
- removed unnecessary API documentation from security guide.
- fix clang build
- updated release notes

Akhil Goyal (4):
  security: modify PDCP xform to support SDAP
  doc: remove unnecessary API code from security guide
  crypto/dpaa2_sec: enable PDCP-SDAP sessions
  crypto/dpaa_sec: enable PDCP-SDAP sessions

Franck LENORMAND (4):
  common/dpaax/caamflib: Support PDCP-SDAP
  test/crypto: Add test vectors for PDCP-SDAP
  test/crypto: Modify test_pdcp_proto to take parameters
  test/crypto: Add PDCP-SDAP cases

 app/test/test_cryptodev.c                     |  278 +-
 ...ryptodev_security_pdcp_sdap_test_vectors.h | 3619 +++++++++++++++++
 doc/guides/prog_guide/rte_security.rst        |   55 +-
 doc/guides/rel_notes/release_20_11.rst        |    9 +
 drivers/common/dpaax/caamflib/desc/pdcp.h     |    8 +
 drivers/common/dpaax/caamflib/desc/sdap.h     | 1063 +++++
 drivers/crypto/dpaa2_sec/dpaa2_sec_dpseci.c   |   30 +-
 drivers/crypto/dpaa_sec/dpaa_sec.c            |   63 +-
 drivers/crypto/dpaa_sec/dpaa_sec.h            |    3 +-
 lib/librte_security/rte_security.h            |   12 +-
 10 files changed, 4982 insertions(+), 158 deletions(-)
 create mode 100644 app/test/test_cryptodev_security_pdcp_sdap_test_vectors.h
 create mode 100644 drivers/common/dpaax/caamflib/desc/sdap.h