sctp: do not inherit ipv6_{mc|ac|fl}_list from parent
authorEric Dumazet <edumazet@google.com>
Wed, 17 May 2017 14:16:40 +0000 (07:16 -0700)
committerDavid S. Miller <davem@davemloft.net>
Thu, 18 May 2017 14:24:08 +0000 (10:24 -0400)
SCTP needs fixes similar to 83eaddab4378 ("ipv6/dccp: do not inherit
ipv6_mc_list from parent"), otherwise bad things can happen.

Signed-off-by: Eric Dumazet <edumazet@google.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/sctp/ipv6.c

index 142b70e959af9142ce35b88749ad2160327c8267..f5b45b8b8b16e6965d24cd79b150828a608c2121 100644 (file)
@@ -677,6 +677,9 @@ static struct sock *sctp_v6_create_accept_sk(struct sock *sk,
        newnp = inet6_sk(newsk);
 
        memcpy(newnp, np, sizeof(struct ipv6_pinfo));
+       newnp->ipv6_mc_list = NULL;
+       newnp->ipv6_ac_list = NULL;
+       newnp->ipv6_fl_list = NULL;
 
        rcu_read_lock();
        opt = rcu_dereference(np->opt);