]> git.baikalelectronics.ru Git - kernel.git/commit
ip6tnl: fix use after free of fb_tnl_dev
authorNicolas Dichtel <nicolas.dichtel@6wind.com>
Thu, 14 Nov 2013 14:47:03 +0000 (15:47 +0100)
committerDavid S. Miller <davem@davemloft.net>
Thu, 14 Nov 2013 22:04:38 +0000 (17:04 -0500)
commitc5de80b37a8892c1b9c8a09d141c8e476c704393
tree5919ae67befcdb3de8aee7330cafb789bec37d19
parent07e556e3f937079495f0972f8acfb3eb42821662
ip6tnl: fix use after free of fb_tnl_dev

Bug has been introduced by commit 4696a456a849 ("ip6tnl: allow to use rtnl ops
on fb tunnel").

When ip6_tunnel.ko is unloaded, FB device is delete by rtnl_link_unregister()
and then we try to use the pointer in ip6_tnl_destroy_tunnels().

Let's add an handler for dellink, which will never remove the FB tunnel. With
this patch it will no more be possible to remove it via 'ip link del ip6tnl0',
but it's safer.

The same fix was already proposed by Willem de Bruijn <willemb@google.com> for
sit interfaces.

CC: Willem de Bruijn <willemb@google.com>
Reported-by: Steven Rostedt <rostedt@goodmis.org>
Signed-off-by: Nicolas Dichtel <nicolas.dichtel@6wind.com>
Acked-by: Willem de Bruijn <willemb@google.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/ipv6/ip6_tunnel.c