Lines Matching refs:ipv6
3 * net/ipv6/fib6_rules.c IPv6 Routing Policy Rules
20 #include <net/ipv6.h>
69 if (net->ipv6.fib6_has_custom_rules) {
79 err = fib_rules_lookup(net->ipv6.fib6_rules_ops,
82 err = fib6_table_lookup(net, net->ipv6.fib6_local_tbl, oif,
84 if (err || res->f6i == net->ipv6.fib6_null_entry)
85 err = fib6_table_lookup(net, net->ipv6.fib6_main_tbl,
96 if (net->ipv6.fib6_has_custom_rules) {
108 fib_rules_lookup(net->ipv6.fib6_rules_ops,
117 net, net->ipv6.fib6_local_tbl, fl6, skb, flags);
118 if (rt != net->ipv6.ip6_null_entry && rt->dst.error != -EAGAIN)
122 net, net->ipv6.fib6_main_tbl, fl6, skb, flags);
129 dst_hold(&net->ipv6.ip6_null_entry->dst);
130 return &net->ipv6.ip6_null_entry->dst;
187 if (!err && res->f6i != net->ipv6.fib6_null_entry)
213 rt = net->ipv6.ip6_null_entry;
218 rt = net->ipv6.ip6_blk_hole_entry;
222 rt = net->ipv6.ip6_prohibit_entry;
235 if (rt != net->ipv6.ip6_null_entry) {
382 net->ipv6.fib6_rules_require_fldissect++;
384 net->ipv6.fib6_has_custom_rules = true;
394 if (net->ipv6.fib6_rules_require_fldissect &&
396 net->ipv6.fib6_rules_require_fldissect--;
492 net->ipv6.fib6_rules_ops = ops;
493 net->ipv6.fib6_rules_require_fldissect = 0;
508 fib_rules_unregister(net->ipv6.fib6_rules_ops);