net: Move ipv4 set_lwt_redirect helper to lwtunnel
IPv4 uses set_lwt_redirect to set the lwtunnel redirect functions as needed. Move it to lwtunnel.h as lwtunnel_set_redirect and change IPv6 to also use it. Signed-off-by: David Ahern <dsahern@gmail.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:

committed by
David S. Miller

parent
64da58528b
commit
9942895b5e
@@ -127,6 +127,17 @@ int lwtunnel_output(struct net *net, struct sock *sk, struct sk_buff *skb);
|
||||
int lwtunnel_input(struct sk_buff *skb);
|
||||
int lwtunnel_xmit(struct sk_buff *skb);
|
||||
|
||||
static inline void lwtunnel_set_redirect(struct dst_entry *dst)
|
||||
{
|
||||
if (lwtunnel_output_redirect(dst->lwtstate)) {
|
||||
dst->lwtstate->orig_output = dst->output;
|
||||
dst->output = lwtunnel_output;
|
||||
}
|
||||
if (lwtunnel_input_redirect(dst->lwtstate)) {
|
||||
dst->lwtstate->orig_input = dst->input;
|
||||
dst->input = lwtunnel_input;
|
||||
}
|
||||
}
|
||||
#else
|
||||
|
||||
static inline void lwtstate_free(struct lwtunnel_state *lws)
|
||||
@@ -158,6 +169,10 @@ static inline bool lwtunnel_xmit_redirect(struct lwtunnel_state *lwtstate)
|
||||
return false;
|
||||
}
|
||||
|
||||
static inline void lwtunnel_set_redirect(struct dst_entry *dst)
|
||||
{
|
||||
}
|
||||
|
||||
static inline unsigned int lwtunnel_headroom(struct lwtunnel_state *lwtstate,
|
||||
unsigned int mtu)
|
||||
{
|
||||
|
Reference in New Issue
Block a user