aboutsummaryrefslogtreecommitdiffstats
path: root/include/net/netns/ipv6.h
diff options
context:
space:
mode:
authorPaolo Abeni <pabeni@redhat.com>2019-11-20 13:47:34 +0100
committerDavid S. Miller <davem@davemloft.net>2019-11-21 14:45:55 -0800
commitb9b33e7c24af1cddc7697056f1664279a40d9a4a (patch)
tree0bd274edeababf25ed5d1c9d76b180984e787afa /include/net/netns/ipv6.h
parentipv6: add fib6_has_custom_rules() helper (diff)
downloadlinux-dev-b9b33e7c24af1cddc7697056f1664279a40d9a4a.tar.xz
linux-dev-b9b33e7c24af1cddc7697056f1664279a40d9a4a.zip
ipv6: keep track of routes using src
Use a per namespace counter, increment it on successful creation of any route using the source address, decrement it on deletion of such routes. This allows us to check easily if the routing decision in the current namespace depends on the packet source. Will be used by the next patch. Suggested-by: David Ahern <dsahern@gmail.com> Signed-off-by: Paolo Abeni <pabeni@redhat.com> Reviewed-by: David Ahern <dsahern@gmail.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'include/net/netns/ipv6.h')
-rw-r--r--include/net/netns/ipv6.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/include/net/netns/ipv6.h b/include/net/netns/ipv6.h
index 022a0fd1a5a4..5ec054473d81 100644
--- a/include/net/netns/ipv6.h
+++ b/include/net/netns/ipv6.h
@@ -83,6 +83,9 @@ struct netns_ipv6 {
#ifdef CONFIG_IPV6_MULTIPLE_TABLES
unsigned int fib6_rules_require_fldissect;
bool fib6_has_custom_rules;
+#ifdef CONFIG_IPV6_SUBTREES
+ unsigned int fib6_routes_require_src;
+#endif
struct rt6_info *ip6_prohibit_entry;
struct rt6_info *ip6_blk_hole_entry;
struct fib6_table *fib6_local_tbl;