Lines Matching refs:ipv6
3 * net/ipv6/fib6_rules.c IPv6 Routing Policy Rules
19 #include <net/ipv6.h>
68 if (net->ipv6.fib6_has_custom_rules) {
78 err = fib_rules_lookup(net->ipv6.fib6_rules_ops,
81 err = fib6_table_lookup(net, net->ipv6.fib6_local_tbl, oif,
83 if (err || res->f6i == net->ipv6.fib6_null_entry)
84 err = fib6_table_lookup(net, net->ipv6.fib6_main_tbl,
95 if (net->ipv6.fib6_has_custom_rules) {
107 fib_rules_lookup(net->ipv6.fib6_rules_ops,
116 net, net->ipv6.fib6_local_tbl, fl6, skb, flags);
117 if (rt != net->ipv6.ip6_null_entry && rt->dst.error != -EAGAIN)
121 net, net->ipv6.fib6_main_tbl, fl6, skb, flags);
128 dst_hold(&net->ipv6.ip6_null_entry->dst);
129 return &net->ipv6.ip6_null_entry->dst;
186 if (!err && res->f6i != net->ipv6.fib6_null_entry)
212 rt = net->ipv6.ip6_null_entry;
217 rt = net->ipv6.ip6_blk_hole_entry;
221 rt = net->ipv6.ip6_prohibit_entry;
234 if (rt != net->ipv6.ip6_null_entry) {
383 net->ipv6.fib6_rules_require_fldissect++;
385 net->ipv6.fib6_has_custom_rules = true;
395 if (net->ipv6.fib6_rules_require_fldissect &&
397 net->ipv6.fib6_rules_require_fldissect--;
488 net->ipv6.fib6_rules_ops = ops;
489 net->ipv6.fib6_rules_require_fldissect = 0;
501 fib_rules_unregister(net->ipv6.fib6_rules_ops);