From: Sabrina Dubroca <sd@queasysnail.net>
To: netdev@vger.kernel.org
Cc: borisp@nvidia.com, john.fastabend@gmail.com, kuba@kernel.org,
Sabrina Dubroca <sd@queasysnail.net>
Subject: [PATCH net-next 00/17] tls: expand tls_cipher_size_desc to simplify getsockopt/setsockopt
Date: Fri, 25 Aug 2023 23:35:05 +0200 [thread overview]
Message-ID: <cover.1692977948.git.sd@queasysnail.net> (raw)
Commit 2d2c5ea24243 ("net/tls: Describe ciphers sizes by const
structs") introduced tls_cipher_size_desc to describe the size of the
fields of the per-cipher crypto_info structs, and commit ea7a9d88ba21
("net/tls: Use cipher sizes structs") used it, but only in
tls_device.c and tls_device_fallback.c, and skipped converting similar
code in tls_main.c and tls_sw.c.
This series expands tls_cipher_size_desc (renamed to tls_cipher_desc
to better fit this expansion) to fully describe a cipher:
- offset of the fields within the per-cipher crypto_info
- size of the full struct (for copies to/from userspace)
- offload flag
- algorithm name used by SW crypto
With these additions, we can remove ~350L of
switch (crypto_info->cipher_type) { ... }
from tls_set_device_offload, tls_sw_fallback_init,
do_tls_getsockopt_conf, do_tls_setsockopt_conf, tls_set_sw_offload
(mainly do_tls_getsockopt_conf and tls_set_sw_offload).
This series also adds the ARIA ciphers to the tls selftests, and some
more getsockopt/setsockopt tests to cover more of the code changed by
this series.
Sabrina Dubroca (17):
selftests: tls: add test variants for aria-gcm
selftests: tls: add getsockopt test
selftests: tls: test some invalid inputs for setsockopt
tls: move tls_cipher_size_desc to net/tls/tls.h
tls: add TLS_CIPHER_ARIA_GCM_* to tls_cipher_size_desc
tls: reduce size of tls_cipher_size_desc
tls: rename tls_cipher_size_desc to tls_cipher_desc
tls: extend tls_cipher_desc to fully describe the ciphers
tls: validate cipher descriptions at compile time
tls: expand use of tls_cipher_desc in tls_set_device_offload
tls: allocate the fallback aead after checking that the cipher is
valid
tls: expand use of tls_cipher_desc in tls_sw_fallback_init
tls: get crypto_info size from tls_cipher_desc in
do_tls_setsockopt_conf
tls: use tls_cipher_desc to simplify do_tls_getsockopt_conf
tls: use tls_cipher_desc to get per-cipher sizes in tls_set_sw_offload
tls: use tls_cipher_desc to access per-cipher crypto_info in
tls_set_sw_offload
tls: get cipher_name from cipher_desc in tls_set_sw_offload
include/net/tls.h | 10 --
net/tls/tls.h | 53 ++++++
net/tls/tls_device.c | 52 ++----
net/tls/tls_device_fallback.c | 62 +++----
net/tls/tls_main.c | 272 ++++++++---------------------
net/tls/tls_sw.c | 179 +++----------------
tools/testing/selftests/net/config | 1 +
tools/testing/selftests/net/tls.c | 84 +++++++++
8 files changed, 278 insertions(+), 435 deletions(-)
--
2.40.1
next reply other threads:[~2023-08-25 21:36 UTC|newest]
Thread overview: 19+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-08-25 21:35 Sabrina Dubroca [this message]
2023-08-25 21:35 ` [PATCH net-next 01/17] selftests: tls: add test variants for aria-gcm Sabrina Dubroca
2023-08-25 21:35 ` [PATCH net-next 02/17] selftests: tls: add getsockopt test Sabrina Dubroca
2023-08-25 21:35 ` [PATCH net-next 03/17] selftests: tls: test some invalid inputs for setsockopt Sabrina Dubroca
2023-08-25 21:35 ` [PATCH net-next 04/17] tls: move tls_cipher_size_desc to net/tls/tls.h Sabrina Dubroca
2023-08-25 21:35 ` [PATCH net-next 05/17] tls: add TLS_CIPHER_ARIA_GCM_* to tls_cipher_size_desc Sabrina Dubroca
2023-08-25 21:35 ` [PATCH net-next 06/17] tls: reduce size of tls_cipher_size_desc Sabrina Dubroca
2023-08-25 21:35 ` [PATCH net-next 07/17] tls: rename tls_cipher_size_desc to tls_cipher_desc Sabrina Dubroca
2023-08-25 21:35 ` [PATCH net-next 08/17] tls: extend tls_cipher_desc to fully describe the ciphers Sabrina Dubroca
2023-08-25 21:35 ` [PATCH net-next 09/17] tls: validate cipher descriptions at compile time Sabrina Dubroca
2023-08-25 21:35 ` [PATCH net-next 10/17] tls: expand use of tls_cipher_desc in tls_set_device_offload Sabrina Dubroca
2023-08-25 21:35 ` [PATCH net-next 11/17] tls: allocate the fallback aead after checking that the cipher is valid Sabrina Dubroca
2023-08-25 21:35 ` [PATCH net-next 12/17] tls: expand use of tls_cipher_desc in tls_sw_fallback_init Sabrina Dubroca
2023-08-25 21:35 ` [PATCH net-next 13/17] tls: get crypto_info size from tls_cipher_desc in do_tls_setsockopt_conf Sabrina Dubroca
2023-08-25 21:35 ` [PATCH net-next 14/17] tls: use tls_cipher_desc to simplify do_tls_getsockopt_conf Sabrina Dubroca
2023-08-25 21:35 ` [PATCH net-next 15/17] tls: use tls_cipher_desc to get per-cipher sizes in tls_set_sw_offload Sabrina Dubroca
2023-08-25 21:35 ` [PATCH net-next 16/17] tls: use tls_cipher_desc to access per-cipher crypto_info " Sabrina Dubroca
2023-08-25 21:35 ` [PATCH net-next 17/17] tls: get cipher_name from cipher_desc " Sabrina Dubroca
2023-08-28 1:10 ` [PATCH net-next 00/17] tls: expand tls_cipher_size_desc to simplify getsockopt/setsockopt patchwork-bot+netdevbpf
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=cover.1692977948.git.sd@queasysnail.net \
--to=sd@queasysnail.net \
--cc=borisp@nvidia.com \
--cc=john.fastabend@gmail.com \
--cc=kuba@kernel.org \
--cc=netdev@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.