Lines Matching refs:ipv6
3 * net/ipv6/fib6_rules.c IPv6 Routing Policy Rules
20 #include <net/ipv6.h>
72 if (net->ipv6.fib6_has_custom_rules) {
82 err = fib_rules_lookup(net->ipv6.fib6_rules_ops,
85 err = fib6_table_lookup(net, net->ipv6.fib6_local_tbl, oif,
87 if (err || res->f6i == net->ipv6.fib6_null_entry)
88 err = fib6_table_lookup(net, net->ipv6.fib6_main_tbl,
99 if (net->ipv6.fib6_has_custom_rules) {
111 fib_rules_lookup(net->ipv6.fib6_rules_ops,
120 net, net->ipv6.fib6_local_tbl, fl6, skb, flags);
121 if (rt != net->ipv6.ip6_null_entry && rt->dst.error != -EAGAIN)
125 net, net->ipv6.fib6_main_tbl, fl6, skb, flags);
132 dst_hold(&net->ipv6.ip6_null_entry->dst);
133 return &net->ipv6.ip6_null_entry->dst;
190 if (!err && res->f6i != net->ipv6.fib6_null_entry)
216 rt = net->ipv6.ip6_null_entry;
221 rt = net->ipv6.ip6_blk_hole_entry;
225 rt = net->ipv6.ip6_prohibit_entry;
238 if (rt != net->ipv6.ip6_null_entry) {
442 net->ipv6.fib6_rules_require_fldissect++;
444 net->ipv6.fib6_has_custom_rules = true;
454 if (net->ipv6.fib6_rules_require_fldissect &&
456 net->ipv6.fib6_rules_require_fldissect--;
586 net->ipv6.fib6_rules_ops = ops;
587 net->ipv6.fib6_rules_require_fldissect = 0;
602 fib_rules_unregister(net->ipv6.fib6_rules_ops);