[RFC mptcp-next 10/10] selftests: mptcp: sockopt: add MPTCP TLS test cases

Geliang Tang posted 10 patches 1 week, 2 days ago
There is a newer version of this series
[RFC mptcp-next 10/10] selftests: mptcp: sockopt: add MPTCP TLS test cases
Posted by Geliang Tang 1 week, 2 days ago
From: Geliang Tang <tanggeliang@kylinos.cn>

Extend KTLS testing to cover MPTCP protocol by adding:
- MPTCP-specific TLS test scenarios for IPv4 and IPv6
- Adjustments to handle MPTCP-specific behavior in test validation
- Skip certain checks that don't apply to TLS-enabled connections

Signed-off-by: Geliang Tang <tanggeliang@kylinos.cn>
---
 tools/testing/selftests/net/mptcp/mptcp_sockopt.c  |  5 ++++-
 tools/testing/selftests/net/mptcp/mptcp_sockopt.sh | 12 ++++++++++++
 2 files changed, 16 insertions(+), 1 deletion(-)

diff --git a/tools/testing/selftests/net/mptcp/mptcp_sockopt.c b/tools/testing/selftests/net/mptcp/mptcp_sockopt.c
index 8058b1fd5a35..96cba6df6a56 100644
--- a/tools/testing/selftests/net/mptcp/mptcp_sockopt.c
+++ b/tools/testing/selftests/net/mptcp/mptcp_sockopt.c
@@ -623,6 +623,9 @@ static void do_getsockopt_mptcp_full_info(struct so_state *s, int fd)
 
 static void do_getsockopts(struct so_state *s, int fd, size_t r, size_t w)
 {
+	if (tls)
+		return;
+
 	do_getsockopt_mptcp_info(s, fd, w);
 
 	do_getsockopt_tcp_info(s, fd, r, w);
@@ -730,7 +733,7 @@ static void process_one_client(int fd, int pipefd)
 
 	/* wait for hangup */
 	ret3 = read(fd, buf, 1);
-	if (ret3 != 0)
+	if (!tls && ret3 != 0)
 		xerror("expected EOF, got %lu", ret3);
 
 	do_getsockopts(&s, fd, ret, ret2);
diff --git a/tools/testing/selftests/net/mptcp/mptcp_sockopt.sh b/tools/testing/selftests/net/mptcp/mptcp_sockopt.sh
index 4d6ab4a63e3f..8840be8adea3 100755
--- a/tools/testing/selftests/net/mptcp/mptcp_sockopt.sh
+++ b/tools/testing/selftests/net/mptcp/mptcp_sockopt.sh
@@ -382,6 +382,18 @@ do_tls_tests()
 	fi
 	do_tls_test -6 -c -t tcp -r tcp
 	lret=$?
+	if [ $lret -ne 0 ] ; then
+		return $lret
+	fi
+
+	# MPTCP KTLS
+	do_tls_test -c
+	lret=$?
+	if [ $lret -ne 0 ] ; then
+		return $lret
+	fi
+	do_tls_test -6 -c
+	lret=$?
 	return $lret
 }
 
-- 
2.51.0