aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJohn Baldwin <jhb@FreeBSD.org>2022-08-08 18:21:54 +0000
committerJohn Baldwin <jhb@FreeBSD.org>2022-08-08 18:21:54 +0000
commitcc13c98302f6d73ab0b0ea81e2b7ef84297057b3 (patch)
treeae1139ab94560095e0e7df714eb604de1f64883a
parent782db2881b6b9c8460f7f311e0e4bbbab36eb88a (diff)
downloadsrc-cc13c98302f6d73ab0b0ea81e2b7ef84297057b3.tar.gz
src-cc13c98302f6d73ab0b0ea81e2b7ef84297057b3.zip
ktls_test: Add a require_toe option similar to require_ifnet.
This skips tests that send and receive records that do not use TOE TLS. Sponsored by: Chelsio Communications
-rw-r--r--tests/sys/kern/ktls_test.c12
1 files changed, 12 insertions, 0 deletions
diff --git a/tests/sys/kern/ktls_test.c b/tests/sys/kern/ktls_test.c
index b36de88adfa2..488b98725d09 100644
--- a/tests/sys/kern/ktls_test.c
+++ b/tests/sys/kern/ktls_test.c
@@ -81,6 +81,18 @@ check_tls_mode(const atf_tc_t *tc, int s, int sockopt)
if (mode != TCP_TLS_MODE_IFNET)
atf_tc_skip("connection did not use ifnet TLS");
}
+
+ if (atf_tc_get_config_var_as_bool_wd(tc, "ktls.require_toe", false)) {
+ socklen_t len;
+ int mode;
+
+ len = sizeof(mode);
+ if (getsockopt(s, IPPROTO_TCP, sockopt, &mode, &len) == -1)
+ atf_libc_error(errno, "Failed to fetch TLS mode");
+
+ if (mode != TCP_TLS_MODE_TOE)
+ atf_tc_skip("connection did not use TOE TLS");
+ }
}
static char