diff options
author | Reinhard Tartler <siretart@tauware.de> | 2019-03-30 10:53:01 -0400 |
---|---|---|
committer | Reinhard Tartler <siretart@tauware.de> | 2019-03-30 10:53:01 -0400 |
commit | 3925631f27136b690f806464227497af42cb529d (patch) | |
tree | c9d6d8eaba72f372ef68fee2d999eda9328e0a41 /tests/test-slirp4netns-cidr.sh | |
parent | 2495596df437ed78585cb469e63bec16318c3645 (diff) |
New upstream version 0.3.0
Diffstat (limited to 'tests/test-slirp4netns-cidr.sh')
-rwxr-xr-x | tests/test-slirp4netns-cidr.sh | 47 |
1 files changed, 47 insertions, 0 deletions
diff --git a/tests/test-slirp4netns-cidr.sh b/tests/test-slirp4netns-cidr.sh new file mode 100755 index 0000000..737e4b9 --- /dev/null +++ b/tests/test-slirp4netns-cidr.sh @@ -0,0 +1,47 @@ +#!/bin/bash +set -xeuo pipefail + +. $(dirname $0)/common.sh + +unshare -r -n sleep infinity & +child=$! + +wait_for_network_namespace $child + +set +e +result=$(slirp4netns -c --cidr 24 $child tun11 2>&1) +set -e +echo $result | grep "invalid CIDR" + +set +e +result=$(slirp4netns -c --cidr foo $child tun11 2>&1) +set -e +echo $result | grep "invalid CIDR" + +set +e +result=$(slirp4netns -c --cidr 10.0.2.0 $child tun11 2>&1) +set -e +echo $result | grep "invalid CIDR" + +set +e +result=$(slirp4netns -c --cidr 10.0.2.100/24 $child tun11 2>&1) +set -e +echo $result | grep "CIDR needs to be a network address like 10.0.2.0/24, not like 10.0.2.100/24" + +set +e +result=$(slirp4netns -c --cidr 10.0.2.100/26 $child tun11 2>&1) +set -e +echo $result | grep "prefix length needs to be 1-25" + +slirp4netns -c $child --cidr 10.0.135.128/25 tun11 & +slirp_pid=$! + +wait_for_network_device $child tun11 + +function cleanup { + kill -9 $child $slirp_pid +} +trap cleanup EXIT + +ip=$(nsenter --preserve-credentials -U -n --target=$child ip -json a show dev tun11 | jq -r .[1].addr_info[0].local) +[[ $ip = 10.0.135.228 ]] |