mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/
synced 2026-11-10 20:48:12 +00:00
selftests/net: check auto-selected port with reuse options
Use IP_LOCAL_PORT_RANGE to limit a socket to 8 ports, bind 8 sockets to port 0 and check they get 8 distinct ports and the 9th bind fails with EADDRINUSE. Run it for the four combinations of reuse options on the sockets: none (existing test) SO_REUSEPORT SO_REUSEADDR SO_REUSEADDR + SO_REUSEPORT TCP passes all four. Before the udp fix UDP only passes the first one: the scan hands out a port already taken by a socket with the same reuse options, so fewer than 8 distinct ports come back and the 9th bind succeeds. # ./ip_local_port_range.sh Before: ok 13 ip_local_port_range.ip4_udp.exhaust_8_port_range not ok 14 ip_local_port_range.ip4_udp.exhaust_8_port_range_reuseport not ok 15 ip_local_port_range.ip4_udp.exhaust_8_port_range_reuseaddr not ok 16 ip_local_port_range.ip4_udp.exhaust_8_port_range_reuseaddr_reuseport ok 49 ip_local_port_range.ip6_udp.exhaust_8_port_range not ok 50 ip_local_port_range.ip6_udp.exhaust_8_port_range_reuseport not ok 51 ip_local_port_range.ip6_udp.exhaust_8_port_range_reuseaddr not ok 52 ip_local_port_range.ip6_udp.exhaust_8_port_range_reuseaddr_reuseport After: ok 13 ip_local_port_range.ip4_udp.exhaust_8_port_range ok 14 ip_local_port_range.ip4_udp.exhaust_8_port_range_reuseport ok 15 ip_local_port_range.ip4_udp.exhaust_8_port_range_reuseaddr ok 16 ip_local_port_range.ip4_udp.exhaust_8_port_range_reuseaddr_reuseport ok 49 ip_local_port_range.ip6_udp.exhaust_8_port_range ok 50 ip_local_port_range.ip6_udp.exhaust_8_port_range_reuseport ok 51 ip_local_port_range.ip6_udp.exhaust_8_port_range_reuseaddr ok 52 ip_local_port_range.ip6_udp.exhaust_8_port_range_reuseaddr_reuseport Signed-off-by: Jiayuan Chen <jiayuan.chen@linux.dev> Link: https://patch.msgid.link/20260928023145.301855-2-jiayuan.chen@linux.dev Signed-off-by: Jakub Kicinski <kuba@kernel.org>
This commit is contained in:
parent
20d020a075
commit
883c308be4
1 changed files with 51 additions and 1 deletions
Loading…
Add table
Add a link
Reference in a new issue