summaryrefslogtreecommitdiffstats
path: root/include/net/lwtunnel.h
diff options
context:
space:
mode:
authorTom Herbert <tom@herbertland.com>2015-08-24 12:45:41 -0400
committerDavid S. Miller <davem@davemloft.net>2015-08-24 13:34:40 -0400
commit127eb7cd3c210afead788991a30950a9e36759ea (patch)
tree8bb513d62040ed1017bb11922a38792f93b7fd33 /include/net/lwtunnel.h
parent54cf7be992fe86571a3f07b96446cd5334b014ab (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.h3
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
27struct lwtunnel_encap_ops { 27struct 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);
81int lwtunnel_build_state(struct net_device *dev, u16 encap_type, 82int 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);
84int lwtunnel_fill_encap(struct sk_buff *skb, 86int 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
131static inline int lwtunnel_build_state(struct net_device *dev, u16 encap_type, 133static 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;