From: Geliang Tang <tanggeliang@kylinos.cn>
v6:
- register each ops as Matt suggested.
- drop sk_is_msk().
- add tcp_sock_get_ulp/tcp_sock_set_ulp helpers.
- set another ULP in sock_test_tcpulp as Matt suggested.
- add tls tests using multiple subflows in mptcp_join.sh.
v5:
- As suggested by Mat and Matt, this set introduces struct tls_prot_ops
for TLS.
- Includes Gang Yan's patches to add MPTCP support to the TLS selftests.
- Link: https://patchwork.kernel.org/project/mptcp/cover/cover.1766372799.git.tanggeliang@kylinos.cn/
v4:
- split "tls: add MPTCP protocol support" into smaller, more
focused patches.
- a new mptcp_inq helper has been implemented instead of directly
using mptcp_inq_hint to fix the issue mentioned in [1].
- add sk_is_msk helper.
- the 'expect' parameter will no longer be added to sock_test_tcpulp.
Instead, SOCK_TEST_TCPULP items causing the tests failure will be
directly removed.
- remove the "TCP KTLS" tests, keeping only the MPTCP-related ones.
- Link: https://patchwork.kernel.org/project/mptcp/cover/cover.1765505775.git.tanggeliang@kylinos.cn/
[1]
https://patchwork.kernel.org/project/mptcp/patch/ce74452f4c095a1761ef493b767b4bd9f9c14359.1764333805.git.tanggeliang@kylinos.cn/
v3:
- mptcp_read_sock() and mptcp_poll() are not exported, as mptcp_sockopt
test does not use read_sock/poll interfaces. They will be exported when
new tests are added in the future.
- call mptcp_inq_hint in tls_device_rx_resync_new_rec(),
tls_device_core_ctrl_rx_resync() and tls_read_flush_backlog() too.
- update selftests.
- Link: https://patchwork.kernel.org/project/mptcp/cover/cover.1763800601.git.tanggeliang@kylinos.cn/
v2:
- fix disconnect.
- update selftests.
This series adds KTLS support for MPTCP. Since the ULP of msk is not being
used, ULP KTLS can be directly configured onto msk without affecting its
communication.
Closes: https://github.com/multipath-tcp/mptcp_net-next/issues/480
Geliang Tang (10):
tls: introduce struct tls_prot_ops
tls: add ops in tls_context
mptcp: implement tls_mptcp_ops
tcp: extract sock_get_ulp helper
mptcp: update ULP getsockopt
tcp: extract sock_set_ulp helper
mptcp: enable TLS setsockopt
selftests: mptcp: connect: update sock_test_tcpulp
selftests: mptcp: connect: add tls sockopt type
selftests: mptcp: join: add mptcp tls tests
include/linux/tcp.h | 2 +
include/net/tls.h | 18 ++++
net/ipv4/tcp.c | 78 ++++++++------
net/mptcp/protocol.c | 100 ++++++++++++++++--
net/mptcp/sockopt.c | 36 ++++++-
net/tls/tls_device.c | 4 +-
net/tls/tls_main.c | 88 ++++++++++++++-
net/tls/tls_strp.c | 28 +++--
net/tls/tls_sw.c | 5 +-
tools/testing/selftests/net/mptcp/config | 1 +
.../selftests/net/mptcp/mptcp_connect.c | 65 +++++++++++-
.../testing/selftests/net/mptcp/mptcp_join.sh | 32 ++++++
12 files changed, 398 insertions(+), 59 deletions(-)
--
2.51.0