diff options
author | Guillaume Nault <g.nault@alphalink.fr> | 2015-12-29 13:06:59 +0100 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2016-01-04 16:45:24 -0500 |
commit | 98f40b3e22aed519bc545ba3cc7d884ede9428c9 (patch) | |
tree | 28e634b6da2bc2be941ecfaaa839f6e593d7bf9d | |
parent | 04c67a90ab947560564f875033f0e06ddfa0c7af (diff) | |
download | op-kernel-dev-98f40b3e22aed519bc545ba3cc7d884ede9428c9.zip op-kernel-dev-98f40b3e22aed519bc545ba3cc7d884ede9428c9.tar.gz |
l2tp: rely on ppp layer for skb scrubbing
Since 79c441ae505c ("ppp: implement x-netns support"), the PPP layer
calls skb_scrub_packet() whenever the skb is received on the PPP
device. Manually resetting packet meta-data in the L2TP layer is thus
redundant.
Signed-off-by: Guillaume Nault <g.nault@alphalink.fr>
Signed-off-by: David S. Miller <davem@davemloft.net>
-rw-r--r-- | net/l2tp/l2tp_ppp.c | 17 |
1 files changed, 1 insertions, 16 deletions
diff --git a/net/l2tp/l2tp_ppp.c b/net/l2tp/l2tp_ppp.c index d93f113..652c250 100644 --- a/net/l2tp/l2tp_ppp.c +++ b/net/l2tp/l2tp_ppp.c @@ -230,26 +230,11 @@ static void pppol2tp_recv(struct l2tp_session *session, struct sk_buff *skb, int if (sk->sk_state & PPPOX_BOUND) { struct pppox_sock *po; + l2tp_dbg(session, PPPOL2TP_MSG_DATA, "%s: recv %d byte data frame, passing to ppp\n", session->name, data_len); - /* We need to forget all info related to the L2TP packet - * gathered in the skb as we are going to reuse the same - * skb for the inner packet. - * Namely we need to: - * - reset xfrm (IPSec) information as it applies to - * the outer L2TP packet and not to the inner one - * - release the dst to force a route lookup on the inner - * IP packet since skb->dst currently points to the dst - * of the UDP tunnel - * - reset netfilter information as it doesn't apply - * to the inner packet either - */ - secpath_reset(skb); - skb_dst_drop(skb); - nf_reset(skb); - po = pppox_sk(sk); ppp_input(&po->chan, skb); } else { |