[PATCH bpf-next v3 1/8] selftests/bpf: Drop struct post_socket_opts

Geliang Tang
2024-05-22T09:24:07Z

It's not possible to have one generic/common "struct post_socket_opts"
for all tests. It's better to have the individual test define its own
callback opts struct.

So this patch drops struct post_socket_opts, and changes the second
parameter of post_socket_cb as "void *" type.

Signed-off-by: Geliang Tang <tanggeliang@kylinos.cn>
---
tools/testing/selftests/bpf/network_helpers.c | 2 +-
tools/testing/selftests/bpf/network_helpers.h | 4 +---
tools/testing/selftests/bpf/prog_tests/sockopt_inherit.c | 2 +-
tools/testing/selftests/bpf/test_tcp_check_syncookie_user.c | 4 ++--
4 files changed, 5 insertions(+), 7 deletions(-)

diff --git a/tools/testing/selftests/bpf/network_helpers.c b/tools/testing/selftests/bpf/network_helpers.c
index 35250e6cde7f..4d776b78929c 100644
--- a/tools/testing/selftests/bpf/network_helpers.c
+++ b/tools/testing/selftests/bpf/network_helpers.c
@@ -133,7 +133,7 @@ int start_server(int family, int type, const char *addr_str, __u16 port,
return __start_server(type, (struct sockaddr *)&addr, addrlen, &opts);
}

-static int reuseport_cb(int fd, const struct post_socket_opts *opts)
+static int reuseport_cb(int fd, void *opts)
{
int on = 1;

diff --git a/tools/testing/selftests/bpf/network_helpers.h b/tools/testing/selftests/bpf/network_helpers.h
index 883c7ea9d8d5..40011e0f584b 100644
--- a/tools/testing/selftests/bpf/network_helpers.h
+++ b/tools/testing/selftests/bpf/network_helpers.h
@@ -21,8 +21,6 @@ typedef __u16 __sum16;
#define VIP_NUM 5
#define MAGIC_BYTES 123

-struct post_socket_opts {};
-
struct network_helper_opts {
const char *cc;
int timeout_ms;
@@ -30,7 +28,7 @@ struct network_helper_opts {
bool noconnect;
int type;
int proto;
- int (*post_socket_cb)(int fd, const struct post_socket_opts *opts);
+ int (*post_socket_cb)(int fd, void *opts);
};

/* ipv4 test vector */
diff --git a/tools/testing/selftests/bpf/prog_tests/sockopt_inherit.c b/tools/testing/selftests/bpf/prog_tests/sockopt_inherit.c
index 1d3a20f01b60..7cd8be2780ca 100644
--- a/tools/testing/selftests/bpf/prog_tests/sockopt_inherit.c
+++ b/tools/testing/selftests/bpf/prog_tests/sockopt_inherit.c
@@ -70,7 +70,7 @@ static void *server_thread(void *arg)
return (void *)(long)err;
}

-static int custom_cb(int fd, const struct post_socket_opts *opts)
+static int custom_cb(int fd, void *opts)
{
char buf;
int err;
diff --git a/tools/testing/selftests/bpf/test_tcp_check_syncookie_user.c b/tools/testing/selftests/bpf/test_tcp_check_syncookie_user.c
index 7b5fc98838cd..aebc58c24dc5 100644
--- a/tools/testing/selftests/bpf/test_tcp_check_syncookie_user.c
+++ b/tools/testing/selftests/bpf/test_tcp_check_syncookie_user.c
@@ -139,14 +139,14 @@ static int run_test(int server_fd, int results_fd, bool xdp)
return ret;
}

-static int v6only_true(int fd, const struct post_socket_opts *opts)
+static int v6only_true(int fd, void *opts)
{
int mode = true;

return setsockopt(fd, IPPROTO_IPV6, IPV6_V6ONLY, &mode, sizeof(mode));
}

-static int v6only_false(int fd, const struct post_socket_opts *opts)
+static int v6only_false(int fd, void *opts)
{
int mode = false;

--
2.43.0