| .. | .. |
|---|
| 69 | 69 | fi |
|---|
| 70 | 70 | } |
|---|
| 71 | 71 | |
|---|
| 72 | +skip_on_veth() |
|---|
| 73 | +{ |
|---|
| 74 | + local kind=$(ip -j -d link show dev ${NETIFS[p1]} | |
|---|
| 75 | + jq -r '.[].linkinfo.info_kind') |
|---|
| 76 | + |
|---|
| 77 | + if [[ $kind == veth ]]; then |
|---|
| 78 | + echo "SKIP: Test cannot be run with veth pairs" |
|---|
| 79 | + exit $ksft_skip |
|---|
| 80 | + fi |
|---|
| 81 | +} |
|---|
| 82 | + |
|---|
| 72 | 83 | if [[ "$(id -u)" -ne 0 ]]; then |
|---|
| 73 | 84 | echo "SKIP: need root privileges" |
|---|
| 74 | 85 | exit 0 |
|---|
| .. | .. |
|---|
| 120 | 131 | |
|---|
| 121 | 132 | for ((i = 1; i <= NUM_NETIFS; ++i)); do |
|---|
| 122 | 133 | local j=$((i+1)) |
|---|
| 134 | + |
|---|
| 135 | + if [ -z ${NETIFS[p$i]} ]; then |
|---|
| 136 | + echo "SKIP: Cannot create interface. Name not specified" |
|---|
| 137 | + exit $ksft_skip |
|---|
| 138 | + fi |
|---|
| 123 | 139 | |
|---|
| 124 | 140 | ip link show dev ${NETIFS[p$i]} &> /dev/null |
|---|
| 125 | 141 | if [[ $? -ne 0 ]]; then |
|---|
| .. | .. |
|---|
| 731 | 747 | local value=$1; shift |
|---|
| 732 | 748 | |
|---|
| 733 | 749 | SYSCTL_ORIG[$key]=$(sysctl -n $key) |
|---|
| 734 | | - sysctl -qw $key=$value |
|---|
| 750 | + sysctl -qw $key="$value" |
|---|
| 735 | 751 | } |
|---|
| 736 | 752 | |
|---|
| 737 | 753 | sysctl_restore() |
|---|
| 738 | 754 | { |
|---|
| 739 | 755 | local key=$1; shift |
|---|
| 740 | 756 | |
|---|
| 741 | | - sysctl -qw $key=${SYSCTL_ORIG["$key"]} |
|---|
| 757 | + sysctl -qw $key="${SYSCTL_ORIG[$key]}" |
|---|
| 742 | 758 | } |
|---|
| 743 | 759 | |
|---|
| 744 | 760 | forwarding_enable() |
|---|