Lines Matching refs:net
132 static struct vrf_map *netns_vrf_map(struct net *net) in netns_vrf_map() argument
134 struct netns_vrf *nn_vrf = net_generic(net, vrf_net_id); in netns_vrf_map()
313 static int vrf_ifindex_lookup_by_table_id(struct net *net, u32 table_id) in vrf_ifindex_lookup_by_table_id() argument
315 struct vrf_map *vmap = netns_vrf_map(net); in vrf_ifindex_lookup_by_table_id()
395 static int vrf_ip6_local_out(struct net *net, struct sock *sk, in vrf_ip6_local_out() argument
402 err = nf_hook(NFPROTO_IPV6, NF_INET_LOCAL_OUT, net, in vrf_ip6_local_out()
406 err = dst_output(net, sk, skb); in vrf_ip6_local_out()
415 struct net *net = dev_net(skb->dev); in vrf_process_v6_outbound() local
419 struct dst_entry *dst_null = &net->ipv6.ip6_null_entry->dst; in vrf_process_v6_outbound()
436 dst = ip6_dst_lookup_flow(net, NULL, &fl6, NULL); in vrf_process_v6_outbound()
454 ret = vrf_ip6_local_out(net, skb->sk, skb); in vrf_process_v6_outbound()
475 static int vrf_ip_local_out(struct net *net, struct sock *sk, in vrf_ip_local_out() argument
482 err = nf_hook(NFPROTO_IPV4, NF_INET_LOCAL_OUT, net, sk, in vrf_ip_local_out()
485 err = dst_output(net, sk, skb); in vrf_ip_local_out()
496 struct net *net = dev_net(vrf_dev); in vrf_process_v4_outbound() local
514 rt = ip_route_output_flow(net, &fl4, NULL); in vrf_process_v4_outbound()
601 static int vrf_finish_output6(struct net *net, struct sock *sk, in vrf_finish_output6() argument
635 static int vrf_output6(struct net *net, struct sock *sk, struct sk_buff *skb) in vrf_output6() argument
638 net, sk, skb, NULL, skb_dst(skb)->dev, in vrf_output6()
675 static int vrf_output6_direct_finish(struct net *net, struct sock *sk, in vrf_output6_direct_finish() argument
680 return vrf_ip6_local_out(net, sk, skb); in vrf_output6_direct_finish()
683 static int vrf_output6_direct(struct net *net, struct sock *sk, in vrf_output6_direct() argument
691 err = nf_hook(NFPROTO_IPV6, NF_INET_POST_ROUTING, net, sk, skb, in vrf_output6_direct()
700 static int vrf_ip6_out_direct_finish(struct net *net, struct sock *sk, in vrf_ip6_out_direct_finish() argument
705 err = vrf_output6_direct(net, sk, skb); in vrf_ip6_out_direct_finish()
707 err = vrf_ip6_local_out(net, sk, skb); in vrf_ip6_out_direct_finish()
716 struct net *net = dev_net(vrf_dev); in vrf_ip6_out_direct() local
721 err = nf_hook(NFPROTO_IPV6, NF_INET_LOCAL_OUT, net, sk, in vrf_ip6_out_direct()
725 err = vrf_output6_direct(net, sk, skb); in vrf_ip6_out_direct()
754 struct net *net = dev_net(dev); in vrf_rt6_release() local
765 netdev_ref_replace(dst->dev, net->loopback_dev, in vrf_rt6_release()
767 dst->dev = net->loopback_dev; in vrf_rt6_release()
776 struct net *net = dev_net(dev); in vrf_rt6_create() local
784 vrf->fib6_table = fib6_new_table(net, vrf->tb_id); in vrf_rt6_create()
789 rt6 = ip6_dst_alloc(net, dev, flags); in vrf_rt6_create()
820 static int vrf_finish_output(struct net *net, struct sock *sk, struct sk_buff *skb) in vrf_finish_output() argument
858 static int vrf_output(struct net *net, struct sock *sk, struct sk_buff *skb) in vrf_output() argument
862 IP_UPD_PO_STATS(net, IPSTATS_MIB_OUT, skb->len); in vrf_output()
868 net, sk, skb, NULL, dev, in vrf_output()
905 static int vrf_output_direct_finish(struct net *net, struct sock *sk, in vrf_output_direct_finish() argument
910 return vrf_ip_local_out(net, sk, skb); in vrf_output_direct_finish()
913 static int vrf_output_direct(struct net *net, struct sock *sk, in vrf_output_direct() argument
921 err = nf_hook(NFPROTO_IPV4, NF_INET_POST_ROUTING, net, sk, skb, in vrf_output_direct()
930 static int vrf_ip_out_direct_finish(struct net *net, struct sock *sk, in vrf_ip_out_direct_finish() argument
935 err = vrf_output_direct(net, sk, skb); in vrf_ip_out_direct_finish()
937 err = vrf_ip_local_out(net, sk, skb); in vrf_ip_out_direct_finish()
946 struct net *net = dev_net(vrf_dev); in vrf_ip_out_direct() local
951 err = nf_hook(NFPROTO_IPV4, NF_INET_LOCAL_OUT, net, sk, in vrf_ip_out_direct()
955 err = vrf_output_direct(net, sk, skb); in vrf_ip_out_direct()
1001 struct net *net = dev_net(dev); in vrf_rtable_release() local
1012 netdev_ref_replace(dst->dev, net->loopback_dev, in vrf_rtable_release()
1014 dst->dev = net->loopback_dev; in vrf_rtable_release()
1169 static int vrf_rcv_finish(struct net *net, struct sock *sk, struct sk_buff *skb) in vrf_rcv_finish() argument
1179 struct net *net = dev_net(dev); in vrf_rcv_nfhook() local
1181 if (nf_hook(pf, hook, net, NULL, skb, dev, NULL, vrf_rcv_finish) != 1) in vrf_rcv_nfhook()
1278 static struct rt6_info *vrf_ip6_route_lookup(struct net *net, in vrf_ip6_route_lookup() argument
1287 return ip6_pol_route(net, vrf->fib6_table, ifindex, fl6, skb, flags); in vrf_ip6_route_lookup()
1302 struct net *net = dev_net(vrf_dev); in vrf_ip6_input_dst() local
1307 rt6 = vrf_ip6_route_lookup(net, vrf_dev, &fl6, ifindex, skb, in vrf_ip6_input_dst()
1312 if (unlikely(&rt6->dst == &net->ipv6.ip6_null_entry->dst)) in vrf_ip6_input_dst()
1446 struct net *net = dev_net(dev); in vrf_link_scope_lookup() local
1456 dst = &net->ipv6.ip6_null_entry->dst; in vrf_link_scope_lookup()
1463 rt = vrf_ip6_route_lookup(net, dev, fl6, fl6->flowi6_oif, NULL, flags); in vrf_link_scope_lookup()
1687 struct net *net; in vrf_newlink() local
1720 net = dev_net(dev); in vrf_newlink()
1721 nn_vrf = net_generic(net, vrf_net_id); in vrf_newlink()
1874 struct net *net = (struct net *)table->extra1; in vrf_shared_table_handler() local
1875 struct vrf_map *vmap = netns_vrf_map(net); in vrf_shared_table_handler()
1910 static int vrf_netns_init_sysctl(struct net *net, struct netns_vrf *nn_vrf) in vrf_netns_init_sysctl() argument
1919 table[0].extra1 = net; in vrf_netns_init_sysctl()
1921 nn_vrf->ctl_hdr = register_net_sysctl_sz(net, "net/vrf", table, in vrf_netns_init_sysctl()
1931 static void vrf_netns_exit_sysctl(struct net *net) in vrf_netns_exit_sysctl() argument
1933 struct netns_vrf *nn_vrf = net_generic(net, vrf_net_id); in vrf_netns_exit_sysctl()
1941 static int vrf_netns_init_sysctl(struct net *net, struct netns_vrf *nn_vrf) in vrf_netns_init_sysctl() argument
1946 static void vrf_netns_exit_sysctl(struct net *net) in vrf_netns_exit_sysctl() argument
1952 static int __net_init vrf_netns_init(struct net *net) in vrf_netns_init() argument
1954 struct netns_vrf *nn_vrf = net_generic(net, vrf_net_id); in vrf_netns_init()
1959 return vrf_netns_init_sysctl(net, nn_vrf); in vrf_netns_init()
1962 static void __net_exit vrf_netns_exit(struct net *net) in vrf_netns_exit() argument
1964 vrf_netns_exit_sysctl(net); in vrf_netns_exit()