diff options
author | Josef Bacik <jbacik@fb.com> | 2017-09-22 20:20:07 -0400 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2017-09-22 20:33:17 -0700 |
commit | 7a56673b58f2414679e926bba80309a037a4fd35 (patch) | |
tree | 05334284c59555cb55a7de7322dd3dd7a10af214 /net | |
parent | cbb2fb5c72f48d3029c144be0f0e61da1c7bccf7 (diff) | |
download | linux-7a56673b58f2414679e926bba80309a037a4fd35.tar.gz linux-7a56673b58f2414679e926bba80309a037a4fd35.tar.bz2 linux-7a56673b58f2414679e926bba80309a037a4fd35.zip |
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: 637bc8bbe6c0 ("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>
Diffstat (limited to 'net')
-rw-r--r-- | net/ipv4/inet_connection_sock.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/net/ipv4/inet_connection_sock.c b/net/ipv4/inet_connection_sock.c index f87f4805e244..a1bf30438bc5 100644 --- a/net/ipv4/inet_connection_sock.c +++ b/net/ipv4/inet_connection_sock.c @@ -266,7 +266,7 @@ static inline int sk_reuseport_match(struct inet_bind_bucket *tb, #if IS_ENABLED(CONFIG_IPV6) if (tb->fast_sk_family == AF_INET6) return ipv6_rcv_saddr_equal(&tb->fast_v6_rcv_saddr, - &sk->sk_v6_rcv_saddr, + inet6_rcv_saddr(sk), tb->fast_rcv_saddr, sk->sk_rcv_saddr, tb->fast_ipv6_only, |