diff options
author | Tom Herbert <tom@herbertland.com> | 2015-08-24 09:45:41 -0700 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2015-08-24 10:34:40 -0700 |
commit | 127eb7cd3c210afead788991a30950a9e36759ea (patch) | |
tree | 8bb513d62040ed1017bb11922a38792f93b7fd33 /net/core/lwtunnel.c | |
parent | 54cf7be992fe86571a3f07b96446cd5334b014ab (diff) | |
download | talos-op-linux-127eb7cd3c210afead788991a30950a9e36759ea.tar.gz talos-op-linux-127eb7cd3c210afead788991a30950a9e36759ea.zip |
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 'net/core/lwtunnel.c')
-rw-r--r-- | net/core/lwtunnel.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/net/core/lwtunnel.c b/net/core/lwtunnel.c index e924c2e08554..dfb1a9ca0835 100644 --- a/net/core/lwtunnel.c +++ b/net/core/lwtunnel.c @@ -72,7 +72,8 @@ int lwtunnel_encap_del_ops(const struct lwtunnel_encap_ops *ops, EXPORT_SYMBOL(lwtunnel_encap_del_ops); int lwtunnel_build_state(struct net_device *dev, u16 encap_type, - struct nlattr *encap, struct lwtunnel_state **lws) + struct nlattr *encap, unsigned int family, + const void *cfg, struct lwtunnel_state **lws) { const struct lwtunnel_encap_ops *ops; int ret = -EINVAL; @@ -85,7 +86,7 @@ int lwtunnel_build_state(struct net_device *dev, u16 encap_type, rcu_read_lock(); ops = rcu_dereference(lwtun_encaps[encap_type]); if (likely(ops && ops->build_state)) - ret = ops->build_state(dev, encap, lws); + ret = ops->build_state(dev, encap, family, cfg, lws); rcu_read_unlock(); return ret; |