@@ -868,10 +868,8 @@ static void test_redirect_lookup(struct test_sk_lookup *skel)
static void drop_on_lookup(const struct test *t)
{
- struct sockaddr_storage dst = {};
int client_fd, server_fd, err;
struct bpf_link *lookup_link;
- socklen_t len;
ssize_t n;
lookup_link = attach_lookup_prog(t->lookup_prog);
@@ -883,12 +881,10 @@ static void drop_on_lookup(const struct test *t)
if (server_fd < 0)
goto detach;
- client_fd = make_socket(t->sotype, t->connect_to.ip,
- t->connect_to.port, &dst, &len);
+ client_fd = connect_to_fd(server_fd, 0);
if (client_fd < 0)
goto close_srv;
- err = connect(client_fd, (void *)&dst, len);
if (t->sotype == SOCK_DGRAM) {
err = send_byte(client_fd);
if (err)
@@ -983,10 +979,8 @@ static void test_drop_on_lookup(struct test_sk_lookup *skel)
static void drop_on_reuseport(const struct test *t)
{
- struct sockaddr_storage dst = { 0 };
int client, server1, server2, err;
struct bpf_link *lookup_link;
- socklen_t len;
ssize_t n;
lookup_link = attach_lookup_prog(t->lookup_prog);
@@ -1008,12 +1002,10 @@ static void drop_on_reuseport(const struct test *t)
if (server2 < 0)
goto close_srv1;
- client = make_socket(t->sotype, t->connect_to.ip,
- t->connect_to.port, &dst, &len);
+ client = connect_to_fd(server2, 0);
if (client < 0)
goto close_srv2;
- err = connect(client, (void *)&dst, len);
if (t->sotype == SOCK_DGRAM) {
err = send_byte(client);
if (err)
@@ -1160,7 +1152,7 @@ static void run_sk_assign_connected(struct test_sk_lookup *skel,
if (server_fd < 0)
return;
- connected_fd = make_client(sotype, EXT_IP4, EXT_PORT);
+ connected_fd = connect_to_fd(server_fd, 0);
if (connected_fd < 0)
goto out_close_server;
@@ -1174,7 +1166,7 @@ static void run_sk_assign_connected(struct test_sk_lookup *skel,
goto out_close_connected;
/* Try to redirect TCP SYN / UDP packet to a connected socket */
- client_fd = make_client(sotype, EXT_IP4, EXT_PORT);
+ client_fd = connect_to_fd(server_fd, 0);
if (client_fd < 0)
goto out_unlink_prog;
if (sotype == SOCK_DGRAM) {
@@ -1223,11 +1215,9 @@ struct test_multi_prog {
static void run_multi_prog_lookup(const struct test_multi_prog *t)
{
- struct sockaddr_storage dst = {};
int map_fd, server_fd, client_fd;
struct bpf_link *link1, *link2;
int prog_idx, done, err;
- socklen_t len;
map_fd = bpf_map__fd(t->run_map);
@@ -1257,17 +1247,13 @@ static void run_multi_prog_lookup(const struct test_multi_prog *t)
if (err)
goto out_close_server;
- client_fd = make_socket(SOCK_STREAM, EXT_IP4, EXT_PORT, &dst, &len);
- if (client_fd < 0)
- goto out_close_server;
-
- err = connect(client_fd, (void *)&dst, len);
- if (CHECK(err && !t->expect_errno, "connect",
+ client_fd = connect_to_fd(server_fd, 0);
+ if (CHECK(client_fd < 0 && !t->expect_errno, "connect",
"unexpected error %d\n", errno))
- goto out_close_client;
- if (CHECK(err && t->expect_errno && errno != t->expect_errno,
+ goto out_close_server;
+ if (CHECK(client_fd < 0 && t->expect_errno && errno != t->expect_errno,
"connect", "unexpected error %d\n", errno))
- goto out_close_client;
+ goto out_close_server;
done = 0;
prog_idx = PROG1;
@@ -1281,7 +1267,6 @@ static void run_multi_prog_lookup(const struct test_multi_prog *t)
CHECK(err, "bpf_map_lookup_elem", "failed\n");
CHECK(!done, "bpf_map_lookup_elem", "PROG2 !done\n");
-out_close_client:
close(client_fd);
out_close_server:
close(server_fd);