mirror of https://gitee.com/openkylin/linux.git
net: use inet6_rcv_saddr to compare sockets
In ipv6_rcv_saddr_equal() we need to use inet6_rcv_saddr(sk) for the
ipv6 compare with the fast socket information to make sure we're doing
the proper comparisons.
Fixes: 637bc8bbe6
("inet: reset tb->fastreuseport when adding a reuseport sk")
Reported-and-tested-by: Cole Robinson <crobinso@redhat.com>
Signed-off-by: Josef Bacik <jbacik@fb.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
cbb2fb5c72
commit
7a56673b58
|
@ -266,7 +266,7 @@ static inline int sk_reuseport_match(struct inet_bind_bucket *tb,
|
||||||
#if IS_ENABLED(CONFIG_IPV6)
|
#if IS_ENABLED(CONFIG_IPV6)
|
||||||
if (tb->fast_sk_family == AF_INET6)
|
if (tb->fast_sk_family == AF_INET6)
|
||||||
return ipv6_rcv_saddr_equal(&tb->fast_v6_rcv_saddr,
|
return ipv6_rcv_saddr_equal(&tb->fast_v6_rcv_saddr,
|
||||||
&sk->sk_v6_rcv_saddr,
|
inet6_rcv_saddr(sk),
|
||||||
tb->fast_rcv_saddr,
|
tb->fast_rcv_saddr,
|
||||||
sk->sk_rcv_saddr,
|
sk->sk_rcv_saddr,
|
||||||
tb->fast_ipv6_only,
|
tb->fast_ipv6_only,
|
||||||
|
|
Loading…
Reference in New Issue