From: Patrick McHardy Date: Wed, 18 Jul 2007 09:04:39 +0000 (-0700) Subject: [PPPOL2TP]: Reset meta-data in xmit function X-Git-Tag: firefly_0821_release~27692^2~8 X-Git-Url: http://demsky.eecs.uci.edu/git/?a=commitdiff_plain;h=f77ae9390438409b535f3b1854672e54120cd38b;p=firefly-linux-kernel-4.4.55.git [PPPOL2TP]: Reset meta-data in xmit function Reset netfilter data and IP CB, fix dst_entry leak. Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller --- diff --git a/drivers/net/pppol2tp.c b/drivers/net/pppol2tp.c index 856610f0624e..f87176055d0e 100644 --- a/drivers/net/pppol2tp.c +++ b/drivers/net/pppol2tp.c @@ -1049,7 +1049,13 @@ static int pppol2tp_xmit(struct ppp_channel *chan, struct sk_buff *skb) printk("\n"); } + memset(&(IPCB(skb2)->opt), 0, sizeof(IPCB(skb2)->opt)); + IPCB(skb2)->flags &= ~(IPSKB_XFRM_TUNNEL_SIZE | IPSKB_XFRM_TRANSFORMED | + IPSKB_REROUTED); + nf_reset(skb2); + /* Get routing info from the tunnel socket */ + dst_release(skb2->dst); skb2->dst = sk_dst_get(sk_tun); /* Queue the packet to IP for output */