Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit e5fbfc1c authored by Craig Gallek's avatar Craig Gallek Committed by David S. Miller
Browse files

soreuseport: fix merge conflict in tcp bind



One of the validation checks for the new array-based TCP SO_REUSEPORT
validation was unintentionally dropped in ea8add2b.  This adds it back.

Lack of this check allows the user to allocate multiple sock_reuseport
structures (leaking all but the first).

Fixes: ea8add2b ("tcp/dccp: better use of ephemeral ports in bind()")
Signed-off-by: default avatarCraig Gallek <kraig@google.com>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent f5461c27
Loading
Loading
Loading
Loading
+1 −0
Original line number Original line Diff line number Diff line
@@ -202,6 +202,7 @@ int inet_csk_get_port(struct sock *sk, unsigned short snum)


		if (((tb->fastreuse > 0 && reuse) ||
		if (((tb->fastreuse > 0 && reuse) ||
		     (tb->fastreuseport > 0 &&
		     (tb->fastreuseport > 0 &&
		      !rcu_access_pointer(sk->sk_reuseport_cb) &&
		      sk->sk_reuseport && uid_eq(tb->fastuid, uid))) &&
		      sk->sk_reuseport && uid_eq(tb->fastuid, uid))) &&
		    smallest_size == -1)
		    smallest_size == -1)
			goto success;
			goto success;