summaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
authorOpenShift Merge Robot <openshift-merge-robot@users.noreply.github.com>2022-03-30 13:25:20 -0400
committerGitHub <noreply@github.com>2022-03-30 13:25:20 -0400
commitfbbf5e88fd03081fe981f98bc2dd835829879d5b (patch)
treed8f1d247bef5f9726460da4286b34efe939cef93 /test
parent688213ba1925d5dd81ed21741177adcd4a506d02 (diff)
parenteedaaf33cdbfd6adced57ac8493d679b3f729493 (diff)
downloadpodman-fbbf5e88fd03081fe981f98bc2dd835829879d5b.tar.gz
podman-fbbf5e88fd03081fe981f98bc2dd835829879d5b.tar.bz2
podman-fbbf5e88fd03081fe981f98bc2dd835829879d5b.zip
Merge pull request #13646 from Luap99/slirp4netns-portrange
fix slirp4netns port forwarding with ranges
Diffstat (limited to 'test')
-rw-r--r--test/system/500-networking.bats21
1 files changed, 21 insertions, 0 deletions
diff --git a/test/system/500-networking.bats b/test/system/500-networking.bats
index a95561635..78ad3fe04 100644
--- a/test/system/500-networking.bats
+++ b/test/system/500-networking.bats
@@ -632,4 +632,25 @@ EOF
is "$output" ".*nameserver $subnet.1.*" "integrated dns nameserver is set"
}
+@test "podman run port forward range" {
+ for netmode in bridge slirp4netns:port_handler=slirp4netns slirp4netns:port_handler=rootlesskit; do
+ local port=$(random_free_port)
+ local end_port=$(( $port + 2 ))
+ local range="$port-$end_port:$port-$end_port"
+ local random=$(random_string)
+
+ run_podman run --network $netmode -p "$range" -d $IMAGE sleep inf
+ cid="$output"
+ for port in $(seq $port $end_port); do
+ run_podman exec -d $cid nc -l -p $port -e /bin/cat
+ # -w 1 adds a 1 second timeout, for some reason ubuntus ncat doesn't close the connection on EOF,
+ # other options to change this are not portable across distros but -w seems to work
+ run nc -w 1 127.0.0.1 $port <<<$random
+ is "$output" "$random" "ncat got data back (netmode=$netmode port=$port)"
+ done
+
+ run_podman rm -f -t0 $cid
+ done
+}
+
# vim: filetype=sh