On 6/25/24 7:42 AM, Geliang Tang wrote: [...]
+static int make_server(int sotype, const char *ip, int port,
struct bpf_program *reuseport_prog)
+{
- struct cb_opts cb_opts = {
.family = is_ipv6(ip) ? AF_INET6 : AF_INET,
.sotype = sotype,
.reuseport = reuseport_prog,
- };
- struct network_helper_opts opts = {
.backlog = SOMAXCONN,
.post_socket_cb = setsockopts,
.cb_opts = &cb_opts,
- };
- int err, fd = -1;
nit: fd doesn't need init given you call start_server_str right away
- fd = start_server_str(cb_opts.family, sotype, ip, port, &opts);
- if (CHECK(fd < 0, "start_server_addr", "failed\n"))
if (!ASSERT_GE(fd, 0, "start_server_str"))
return -1;
/* Late attach reuseport prog so we can have one init path */ if (reuseport_prog) {
Rest of the series LGTM.
Thanks, Daniel