]> www.infradead.org Git - users/jedix/linux-maple.git/commitdiff
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)
committerKirtikar Kashyap <kirtikar.kashyap@oracle.com>
Tue, 22 Aug 2017 17:07:17 +0000 (10:07 -0700)
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>
(cherry picked from commit fdcee2cbb8438702ea1b328fb6e0ac5e9a40c7f8)

Orabug: 26107745
CVE: CVE-2017-9075

Signed-off-by: Kirtikar Kashyap <kirtikar.kashyap@oracle.com>
Reviewed-by: Jack Vogel <jack.vogel@oracle.com>
net/sctp/ipv6.c

index 38a8b833473e4d3ce6d2a58af02abf626a6b5d64..6df51623f6dede6e00d25cda386cc3e186449ffe 100644 (file)
@@ -655,6 +655,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);