tc_prog_attach
int tc_prog_attach(const char *dev, int ingress_fd, int egress_fd);
ret = tc_prog_attach("veth2", -1, bpf_program__fd(skel->progs.tc_prog));
ret = tc_prog_attach("veth1", -1, cfg->client_egress_prog_fd);
if (!ASSERT_OK(tc_prog_attach("veth2", cfg->server_ingress_prog_fd, -1),
if (tc_prog_attach(IP6TNL_TUNL_DEV1, get_fd, set_fd))
if (tc_prog_attach(VXLAN_TUNL_DEV1, get_src_prog_fd, set_src_prog_fd))
if (tc_prog_attach("veth1", set_dst_prog_fd, -1))
if (tc_prog_attach(VXLAN_TUNL_DEV0, -1, set_dst_prog_fd))
if (tc_prog_attach(IP6VXLAN_TUNL_DEV1, get_src_prog_fd, set_src_prog_fd))
if (tc_prog_attach(IP6VXLAN_TUNL_DEV0, -1, set_dst_prog_fd))
if (tc_prog_attach(IPIP_TUNL_DEV1, get_src_prog_fd, set_src_prog_fd))
if (tc_prog_attach("veth1", tc_prog_fd, -1))
if (tc_prog_attach(GRE_TUNL_DEV1, get_fd, set_fd))
if (tc_prog_attach(IP6GRE_TUNL_DEV1, get_fd, set_fd))
if (tc_prog_attach(ERSPAN_TUNL_DEV1, get_fd, set_fd))
if (tc_prog_attach(IP6ERSPAN_TUNL_DEV1, get_fd, set_fd))
if (tc_prog_attach(GENEVE_TUNL_DEV1, get_fd, set_fd))
if (tc_prog_attach(IP6GENEVE_TUNL_DEV1, get_fd, set_fd))