36 lines · bash
1#!/bin/bash2# SPDX-License-Identifier: GPL-2.03#4# Run tests when all ephemeral ports are exhausted.5#6# Author: Kuniyuki Iwashima <kuniyu@amazon.co.jp>7 8set +x9set -e10 11readonly NETNS="ns-$(mktemp -u XXXXXX)"12 13setup() {14 ip netns add "${NETNS}"15 ip -netns "${NETNS}" link set lo up16 ip netns exec "${NETNS}" \17 sysctl -w net.ipv4.ip_local_port_range="32768 32768" \18 > /dev/null 2>&119 ip netns exec "${NETNS}" \20 sysctl -w net.ipv4.ip_autobind_reuse=1 > /dev/null 2>&121}22 23cleanup() {24 ip netns del "${NETNS}"25}26 27trap cleanup EXIT28setup29 30do_test() {31 ip netns exec "${NETNS}" ./reuseaddr_ports_exhausted32}33 34do_test35echo "tests done"36