netkit
struct netkit *nk = netkit_priv(dev);
struct netkit *nk = netkit_priv(dev);
struct netkit *nk = netkit_priv(dev);
struct netkit *nk = netkit_priv(dev);
struct netkit *nk = netkit_priv(dev), *nk2;
struct netkit *nk = netkit_priv(dev);
struct netkit *nk;
struct netkit *nk = netkit_priv(dev);
struct netkit *nk = netkit_priv(dev);
struct netkit *nk;
static struct netkit *netkit_priv(const struct net_device *dev)
info->netkit.ifindex = ifindex;
info->netkit.attach_type = link->attach_type;
attr->link_create.netkit.relative_fd,
attr->link_create.netkit.expected_revision);
struct netkit *nk = netkit_priv(dev);
struct netkit *nk = netkit_priv(dev);
struct netkit *nk = netkit_priv(dev);
struct netkit *nk = netkit_priv(dev);
.priv_size = sizeof(struct netkit),
BPF_LINK_TYPE(BPF_LINK_TYPE_NETKIT, netkit)
} netkit;
} netkit;
show_link_ifindex_json(info->netkit.ifindex, json_wtr);
show_link_attach_type_json(info->netkit.attach_type, json_wtr);
show_link_ifindex_plain(info->netkit.ifindex);
show_link_attach_type_plain(info->netkit.attach_type);
} netkit;
} netkit;
relative_fd = OPTS_GET(opts, netkit.relative_fd, 0);
relative_id = OPTS_GET(opts, netkit.relative_id, 0);
attr.link_create.netkit.relative_id = relative_id;
attr.link_create.netkit.relative_fd = relative_fd;
attr.link_create.netkit.expected_revision = OPTS_GET(opts, netkit.expected_revision, 0);
if (!OPTS_ZEROED(opts, netkit))
} netkit;
link_create_opts.netkit.expected_revision = OPTS_GET(opts, expected_revision, 0);
link_create_opts.netkit.relative_fd = relative_fd;
link_create_opts.netkit.relative_id = relative_id;
if (r->linkinfo._present.data && r->linkinfo.data._present.netkit) {
struct rt_link_linkinfo_netkit_attrs *netkit;
netkit = &r->linkinfo.data.netkit;
printf("primary %d ", netkit->primary);
if (netkit->_present.policy)
name = rt_link_netkit_policy_str(netkit->policy);