diff options
author | Roopa Prabhu <roopa@cumulusnetworks.com> | 2015-07-21 04:43:47 -0400 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2015-07-21 13:39:03 -0400 |
commit | 571e722676fe386bb66f72a75b64a6ebf535c077 (patch) | |
tree | 80e374cf7f848408bad3be37237e4f43c9a9701b /include | |
parent | 499a24256862714539e902c0499b67da2bb3ab72 (diff) |
ipv4: support for fib route lwtunnel encap attributes
This patch adds support in ipv4 fib functions to parse user
provided encap attributes and attach encap state data to fib_nh
and rtable.
Signed-off-by: Roopa Prabhu <roopa@cumulusnetworks.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'include')
-rw-r--r-- | include/net/ip_fib.h | 5 | ||||
-rw-r--r-- | include/net/route.h | 1 |
2 files changed, 5 insertions, 1 deletions
diff --git a/include/net/ip_fib.h b/include/net/ip_fib.h index 49c142bdf01e..5e0196084f1e 100644 --- a/include/net/ip_fib.h +++ b/include/net/ip_fib.h | |||
@@ -44,7 +44,9 @@ struct fib_config { | |||
44 | u32 fc_flow; | 44 | u32 fc_flow; |
45 | u32 fc_nlflags; | 45 | u32 fc_nlflags; |
46 | struct nl_info fc_nlinfo; | 46 | struct nl_info fc_nlinfo; |
47 | }; | 47 | struct nlattr *fc_encap; |
48 | u16 fc_encap_type; | ||
49 | }; | ||
48 | 50 | ||
49 | struct fib_info; | 51 | struct fib_info; |
50 | struct rtable; | 52 | struct rtable; |
@@ -89,6 +91,7 @@ struct fib_nh { | |||
89 | struct rtable __rcu * __percpu *nh_pcpu_rth_output; | 91 | struct rtable __rcu * __percpu *nh_pcpu_rth_output; |
90 | struct rtable __rcu *nh_rth_input; | 92 | struct rtable __rcu *nh_rth_input; |
91 | struct fnhe_hash_bucket __rcu *nh_exceptions; | 93 | struct fnhe_hash_bucket __rcu *nh_exceptions; |
94 | struct lwtunnel_state *nh_lwtstate; | ||
92 | }; | 95 | }; |
93 | 96 | ||
94 | /* | 97 | /* |
diff --git a/include/net/route.h b/include/net/route.h index fe22d03afb6a..2d45f419477f 100644 --- a/include/net/route.h +++ b/include/net/route.h | |||
@@ -66,6 +66,7 @@ struct rtable { | |||
66 | 66 | ||
67 | struct list_head rt_uncached; | 67 | struct list_head rt_uncached; |
68 | struct uncached_list *rt_uncached_list; | 68 | struct uncached_list *rt_uncached_list; |
69 | struct lwtunnel_state *rt_lwtstate; | ||
69 | }; | 70 | }; |
70 | 71 | ||
71 | static inline bool rt_is_input_route(const struct rtable *rt) | 72 | static inline bool rt_is_input_route(const struct rtable *rt) |