dccp/tcp: do not inherit mc_list from parent
authorEric Dumazet <edumazet@google.com>
Tue, 9 May 2017 13:29:19 +0000 (06:29 -0700)
committerDavid S. Miller <davem@davemloft.net>
Tue, 9 May 2017 19:17:49 +0000 (15:17 -0400)
commit657831ffc38e30092a2d5f03d385d710eb88b09a
treed1d51e11210d51989a2e18caf12efcb7008b1396
parente735da5ec09526f197f3d8dd837d9a00e45e72aa
dccp/tcp: do not inherit mc_list from parent

syzkaller found a way to trigger double frees from ip_mc_drop_socket()

It turns out that leave a copy of parent mc_list at accept() time,
which is very bad.

Very similar to commit 8b485ce69876 ("tcp: do not inherit
fastopen_req from parent")

Initial report from Pray3r, completed by Andrey one.
Thanks a lot to them !

Signed-off-by: Eric Dumazet <edumazet@google.com>
Reported-by: Pray3r <pray3r.z@gmail.com>
Reported-by: Andrey Konovalov <andreyknvl@google.com>
Tested-by: Andrey Konovalov <andreyknvl@google.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/ipv4/inet_connection_sock.c