Skip to content

Commit 56f3e3f

Browse files
q2vendavem330
authored andcommitted
tcp: Rearrange tests in inet_bind2_bucket_(addr_match|match_addr_any)().
The protocol family tests in inet_bind2_bucket_addr_match() and inet_bind2_bucket_match_addr_any() are ordered as follows. if (sk->sk_family != tb2->family) else if (sk->sk_family == AF_INET6) else This patch rearranges them so that AF_INET6 socket is handled first to make the following patch tidy, where tb2->family will be removed. if (sk->sk_family == AF_INET6) else if (tb2->family == AF_INET6) else Signed-off-by: Kuniyuki Iwashima <[email protected]> Reviewed-by: Eric Dumazet <[email protected]> Signed-off-by: David S. Miller <[email protected]>
1 parent 5e07e67 commit 56f3e3f

File tree

1 file changed

+12
-13
lines changed

1 file changed

+12
-13
lines changed

net/ipv4/inet_hashtables.c

Lines changed: 12 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -149,18 +149,17 @@ static bool inet_bind2_bucket_addr_match(const struct inet_bind2_bucket *tb2,
149149
const struct sock *sk)
150150
{
151151
#if IS_ENABLED(CONFIG_IPV6)
152-
if (sk->sk_family != tb2->family) {
153-
if (sk->sk_family == AF_INET)
154-
return ipv6_addr_v4mapped(&tb2->v6_rcv_saddr) &&
155-
tb2->v6_rcv_saddr.s6_addr32[3] == sk->sk_rcv_saddr;
152+
if (sk->sk_family == AF_INET6) {
153+
if (tb2->family == AF_INET6)
154+
return ipv6_addr_equal(&tb2->v6_rcv_saddr, &sk->sk_v6_rcv_saddr);
156155

157156
return ipv6_addr_v4mapped(&sk->sk_v6_rcv_saddr) &&
158157
sk->sk_v6_rcv_saddr.s6_addr32[3] == tb2->rcv_saddr;
159158
}
160159

161-
if (sk->sk_family == AF_INET6)
162-
return ipv6_addr_equal(&tb2->v6_rcv_saddr,
163-
&sk->sk_v6_rcv_saddr);
160+
if (tb2->family == AF_INET6)
161+
return ipv6_addr_v4mapped(&tb2->v6_rcv_saddr) &&
162+
tb2->v6_rcv_saddr.s6_addr32[3] == sk->sk_rcv_saddr;
164163
#endif
165164
return tb2->rcv_saddr == sk->sk_rcv_saddr;
166165
}
@@ -836,17 +835,17 @@ bool inet_bind2_bucket_match_addr_any(const struct inet_bind2_bucket *tb, const
836835
return false;
837836

838837
#if IS_ENABLED(CONFIG_IPV6)
839-
if (sk->sk_family != tb->family) {
840-
if (sk->sk_family == AF_INET)
841-
return ipv6_addr_any(&tb->v6_rcv_saddr) ||
842-
ipv6_addr_v4mapped_any(&tb->v6_rcv_saddr);
838+
if (sk->sk_family == AF_INET6) {
839+
if (tb->family == AF_INET6)
840+
return ipv6_addr_any(&tb->v6_rcv_saddr);
843841

844842
return ipv6_addr_v4mapped(&sk->sk_v6_rcv_saddr) &&
845843
tb->rcv_saddr == 0;
846844
}
847845

848-
if (sk->sk_family == AF_INET6)
849-
return ipv6_addr_any(&tb->v6_rcv_saddr);
846+
if (tb->family == AF_INET6)
847+
return ipv6_addr_any(&tb->v6_rcv_saddr) ||
848+
ipv6_addr_v4mapped_any(&tb->v6_rcv_saddr);
850849
#endif
851850
return tb->rcv_saddr == 0;
852851
}

0 commit comments

Comments
 (0)