]> git.hungrycats.org Git - linux/commitdiff
[IPV6]: Fix UDP socket selection for multicast.
authorDavid Stevens <dlstevens@us.ibm.com>
Mon, 17 Nov 2003 10:44:09 +0000 (02:44 -0800)
committerDavid S. Miller <davem@nuts.ninka.net>
Mon, 17 Nov 2003 10:44:09 +0000 (02:44 -0800)
When binding to two different multicast addresses on the same UDP
port, a copy sent to either multicast address is delivered to both.

net/ipv6/udp.c

index 814dfb06be3b72a60e300083012f7f4eefe3b230..5b2f64efc8d14baccbb77c5a8e43bcb344fe94ee 100644 (file)
@@ -551,6 +551,7 @@ static struct sock *udp_v6_mcast_next(struct sock *sk,
                        if (!ipv6_addr_any(&np->rcv_saddr)) {
                                if (!ipv6_addr_cmp(&np->rcv_saddr, loc_addr))
                                        return s;
+                               continue;
                        }
                        if(!inet6_mc_check(s, loc_addr, rmt_addr))
                                continue;