mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-11-29 15:14:18 +08:00
[IPV6]: Fix per-socket multicast filtering in sk_reuse case
per-socket multicast filters were not being applied to all sockets in the case of an exact-match bound address, due to an over-exuberant "return" in the look-up code. Fix below. IPv4 does not have this problem. Thanks to Hoerdt Mickael for reporting the bug. Signed-off-by: David L Stevens <dlstevens@us.ibm.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
87375ab47c
commit
40796c5e8f
@ -405,9 +405,8 @@ static struct sock *udp_v6_mcast_next(struct sock *sk,
|
||||
continue;
|
||||
|
||||
if (!ipv6_addr_any(&np->rcv_saddr)) {
|
||||
if (ipv6_addr_equal(&np->rcv_saddr, loc_addr))
|
||||
return s;
|
||||
continue;
|
||||
if (!ipv6_addr_equal(&np->rcv_saddr, loc_addr))
|
||||
continue;
|
||||
}
|
||||
if(!inet6_mc_check(s, loc_addr, rmt_addr))
|
||||
continue;
|
||||
|
Loading…
Reference in New Issue
Block a user