selftests/bpf: Use start_server_addr in cls_redirect
authorGeliang Tang <tanggeliang@kylinos.cn>
Thu, 18 Apr 2024 08:09:08 +0000 (16:09 +0800)
committerMartin KaFai Lau <martin.lau@kernel.org>
Sat, 20 Apr 2024 00:13:28 +0000 (17:13 -0700)
Include network_helpers.h in prog_tests/cls_redirect.c, use the newly
added public helper start_server_addr() instead of the local defined
function start_server(). This can avoid duplicate code.

Signed-off-by: Geliang Tang <tanggeliang@kylinos.cn>
Link: https://lore.kernel.org/r/13f336cb4c6680175d50bb963d9532e11528c758.1713427236.git.tanggeliang@kylinos.cn
Signed-off-by: Martin KaFai Lau <martin.lau@kernel.org>
tools/testing/selftests/bpf/prog_tests/cls_redirect.c

index 2a55f717fc07a7b3325ed4d3114cc33c6c285a03..68cb9310665870ee69e7f9957830a7e977d4c6b0 100644 (file)
@@ -10,6 +10,7 @@
 #include <netinet/tcp.h>
 
 #include <test_progs.h>
+#include "network_helpers.h"
 
 #include "progs/test_cls_redirect.h"
 #include "test_cls_redirect.skel.h"
@@ -35,23 +36,6 @@ struct tuple {
        struct addr_port dst;
 };
 
-static int start_server(const struct sockaddr *addr, socklen_t len, int type)
-{
-       int fd = socket(addr->sa_family, type, 0);
-       if (CHECK_FAIL(fd == -1))
-               return -1;
-       if (CHECK_FAIL(bind(fd, addr, len) == -1))
-               goto err;
-       if (type == SOCK_STREAM && CHECK_FAIL(listen(fd, 128) == -1))
-               goto err;
-
-       return fd;
-
-err:
-       close(fd);
-       return -1;
-}
-
 static int connect_to_server(const struct sockaddr *addr, socklen_t len,
                             int type)
 {
@@ -98,7 +82,7 @@ static bool set_up_conn(const struct sockaddr *addr, socklen_t len, int type,
        socklen_t slen = sizeof(ss);
        struct sockaddr *sa = (struct sockaddr *)&ss;
 
-       *server = start_server(addr, len, type);
+       *server = start_server_addr(type, (struct sockaddr_storage *)addr, len, NULL);
        if (*server < 0)
                return false;