summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorStefan Metzmacher <metze@samba.org>2021-02-05 14:20:16 +0100
committerAndreas Schneider <asn@samba.org>2021-02-08 19:29:57 +0100
commit2d93f75669a432723c90e20c3f9b2e2abfa55545 (patch)
tree59d4865ff0f9e32160fa2349d4b6eb1bff477d6e
parent5aa939f2eb3f3ab04b65fde031a0c1f151928121 (diff)
downloadsocket_wrapper-2d93f75669a432723c90e20c3f9b2e2abfa55545.tar.gz
socket_wrapper-2d93f75669a432723c90e20c3f9b2e2abfa55545.tar.xz
socket_wrapper-2d93f75669a432723c90e20c3f9b2e2abfa55545.zip
test_echo_tcp_sendmsg_recvmsg_fd: also test passing the same socket up to 6 times
Note SWRAP_MAX_PASSED_FDS is currently 6. This test demonstrates that even 64-bit systems required commit: "swrap: fix fd-passing without 4 padding bytes" Signed-off-by: Stefan Metzmacher <metze@samba.org> Reviewed-by: Andreas Schneider <asn@samba.org>
-rw-r--r--tests/test_echo_tcp_sendmsg_recvmsg_fd.c47
1 files changed, 46 insertions, 1 deletions
diff --git a/tests/test_echo_tcp_sendmsg_recvmsg_fd.c b/tests/test_echo_tcp_sendmsg_recvmsg_fd.c
index e1908ae..9f0ac85 100644
--- a/tests/test_echo_tcp_sendmsg_recvmsg_fd.c
+++ b/tests/test_echo_tcp_sendmsg_recvmsg_fd.c
@@ -277,13 +277,58 @@ static void test_tcp_sendmsg_recvmsg_fd_1(void **state)
test_tcp_sendmsg_recvmsg_fd_same(1);
}
+static void test_tcp_sendmsg_recvmsg_fd_2s(void **state)
+{
+ (void) state; /* unused */
+ test_tcp_sendmsg_recvmsg_fd_same(2);
+}
+
+static void test_tcp_sendmsg_recvmsg_fd_3s(void **state)
+{
+ (void) state; /* unused */
+ test_tcp_sendmsg_recvmsg_fd_same(3);
+}
+
+static void test_tcp_sendmsg_recvmsg_fd_4s(void **state)
+{
+ (void) state; /* unused */
+ test_tcp_sendmsg_recvmsg_fd_same(4);
+}
+
+static void test_tcp_sendmsg_recvmsg_fd_5s(void **state)
+{
+ (void) state; /* unused */
+ test_tcp_sendmsg_recvmsg_fd_same(5);
+}
+
+static void test_tcp_sendmsg_recvmsg_fd_6s(void **state)
+{
+ (void) state; /* unused */
+ test_tcp_sendmsg_recvmsg_fd_same(6);
+}
+
int main(void) {
int rc;
const struct CMUnitTest tests[] = {
cmocka_unit_test_setup_teardown(test_tcp_sendmsg_recvmsg_fd_1,
setup_echo_srv_tcp_ipv4,
- teardown)
+ teardown),
+ cmocka_unit_test_setup_teardown(test_tcp_sendmsg_recvmsg_fd_2s,
+ setup_echo_srv_tcp_ipv4,
+ teardown),
+ cmocka_unit_test_setup_teardown(test_tcp_sendmsg_recvmsg_fd_3s,
+ setup_echo_srv_tcp_ipv4,
+ teardown),
+ cmocka_unit_test_setup_teardown(test_tcp_sendmsg_recvmsg_fd_4s,
+ setup_echo_srv_tcp_ipv4,
+ teardown),
+ cmocka_unit_test_setup_teardown(test_tcp_sendmsg_recvmsg_fd_5s,
+ setup_echo_srv_tcp_ipv4,
+ teardown),
+ cmocka_unit_test_setup_teardown(test_tcp_sendmsg_recvmsg_fd_6s,
+ setup_echo_srv_tcp_ipv4,
+ teardown),
};
rc = cmocka_run_group_tests(tests, NULL, NULL);