From: Tommi Rantala Date: Wed, 6 Feb 2013 03:24:02 +0000 (+0000) Subject: ipv6/ip6_gre: fix error case handling in ip6gre_tunnel_xmit() X-Git-Tag: v4.13~10205^2~9 X-Git-Url: https://git.proxmox.com/?a=commitdiff_plain;h=41ab3e31bd50b42c85ac0aa0469642866aee2a9a;p=mirror_ubuntu-bionic-kernel.git ipv6/ip6_gre: fix error case handling in ip6gre_tunnel_xmit() ip6gre_tunnel_xmit() is leaking the skb when we hit this error branch, and the -1 return value from this function is bogus. Use the error handling we already have in place in ip6gre_tunnel_xmit() for this error case to fix this. Signed-off-by: Tommi Rantala Acked-by: Eric Dumazet Signed-off-by: David S. Miller --- diff --git a/net/ipv6/ip6_gre.c b/net/ipv6/ip6_gre.c index c727e4712751..131dd097736d 100644 --- a/net/ipv6/ip6_gre.c +++ b/net/ipv6/ip6_gre.c @@ -960,7 +960,7 @@ static netdev_tx_t ip6gre_tunnel_xmit(struct sk_buff *skb, int ret; if (!ip6_tnl_xmit_ctl(t)) - return -1; + goto tx_err; switch (skb->protocol) { case htons(ETH_P_IP):