Files
linux/net/ipv6
Hristo Venev 4dd39da85f net: sit: Unregister catch-all devices
commit 610f8c0fc8 upstream.

A sit interface created without a local or a remote address is linked
into the `sit_net::tunnels_wc` list of its original namespace. When
deleting a network namespace, delete the devices that have been moved.

The following script triggers a null pointer dereference if devices
linked in a deleted `sit_net` remain:

    for i in `seq 1 30`; do
        ip netns add ns-test
        ip netns exec ns-test ip link add dev veth0 type veth peer veth1
        ip netns exec ns-test ip link add dev sit$i type sit dev veth0
        ip netns exec ns-test ip link set dev sit$i netns $$
        ip netns del ns-test
    done
    for i in `seq 1 30`; do
        ip link del dev sit$i
    done

Fixes: 5e6700b3bf ("sit: add support of x-netns")
Signed-off-by: Hristo Venev <hristo@venev.name>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2023-05-16 10:52:59 +09:00
..
2023-05-15 17:27:56 +09:00
2016-05-31 14:07:49 -07:00
2023-05-16 10:52:59 +09:00
2016-06-27 15:06:17 -04:00
2015-11-03 10:52:13 -05:00
2016-09-21 10:09:14 +02:00
2018-06-26 09:32:02 +08:00