diff options
author | Tom Herbert <tom@herbertland.com> | 2015-08-24 12:45:41 -0400 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2015-08-24 13:34:40 -0400 |
commit | 127eb7cd3c210afead788991a30950a9e36759ea (patch) | |
tree | 8bb513d62040ed1017bb11922a38792f93b7fd33 /include/net/lwtunnel.h | |
parent | 54cf7be992fe86571a3f07b96446cd5334b014ab (diff) |
lwt: Add cfg argument to build_state
Add cfg and family arguments to lwt build state functions. cfg is a void
pointer and will either be a pointer to a fib_config or fib6_config
structure. The family parameter indicates which one (either AF_INET
or AF_INET6).
LWT encpasulation implementation may use the fib configuration to build
the LWT state.
Signed-off-by: Tom Herbert <tom@herbertland.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'include/net/lwtunnel.h')
-rw-r--r-- | include/net/lwtunnel.h | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/include/net/lwtunnel.h b/include/net/lwtunnel.h index 843489884448..fce0e35e74d0 100644 --- a/include/net/lwtunnel.h +++ b/include/net/lwtunnel.h | |||
@@ -26,6 +26,7 @@ struct lwtunnel_state { | |||
26 | 26 | ||
27 | struct lwtunnel_encap_ops { | 27 | struct lwtunnel_encap_ops { |
28 | int (*build_state)(struct net_device *dev, struct nlattr *encap, | 28 | int (*build_state)(struct net_device *dev, struct nlattr *encap, |
29 | unsigned int family, const void *cfg, | ||
29 | struct lwtunnel_state **ts); | 30 | struct lwtunnel_state **ts); |
30 | int (*output)(struct sock *sk, struct sk_buff *skb); | 31 | int (*output)(struct sock *sk, struct sk_buff *skb); |
31 | int (*input)(struct sk_buff *skb); | 32 | int (*input)(struct sk_buff *skb); |
@@ -80,6 +81,7 @@ int lwtunnel_encap_del_ops(const struct lwtunnel_encap_ops *op, | |||
80 | unsigned int num); | 81 | unsigned int num); |
81 | int lwtunnel_build_state(struct net_device *dev, u16 encap_type, | 82 | int lwtunnel_build_state(struct net_device *dev, u16 encap_type, |
82 | struct nlattr *encap, | 83 | struct nlattr *encap, |
84 | unsigned int family, const void *cfg, | ||
83 | struct lwtunnel_state **lws); | 85 | struct lwtunnel_state **lws); |
84 | int lwtunnel_fill_encap(struct sk_buff *skb, | 86 | int lwtunnel_fill_encap(struct sk_buff *skb, |
85 | struct lwtunnel_state *lwtstate); | 87 | struct lwtunnel_state *lwtstate); |
@@ -130,6 +132,7 @@ static inline int lwtunnel_encap_del_ops(const struct lwtunnel_encap_ops *op, | |||
130 | 132 | ||
131 | static inline int lwtunnel_build_state(struct net_device *dev, u16 encap_type, | 133 | static inline int lwtunnel_build_state(struct net_device *dev, u16 encap_type, |
132 | struct nlattr *encap, | 134 | struct nlattr *encap, |
135 | unsigned int family, const void *cfg, | ||
133 | struct lwtunnel_state **lws) | 136 | struct lwtunnel_state **lws) |
134 | { | 137 | { |
135 | return -EOPNOTSUPP; | 138 | return -EOPNOTSUPP; |