ShellCheck - shell script analysis tool version: 0.11.0 license: GNU General Public License, version 3 website: https://www.shellcheck.net Redirect to /tmp/tmp.a7s1aY165Q and /tmp/tmp.HtgULZBXHg Tree base: dc095353879a ("selftests: ovpn: align command flow with TAP") Now at: a197451b55bb ("selftests: ovpn: serialize YNL listener startup") ====== Checking before the patch ====== Checking tools/testing/selftests/net/ovpn/test.sh - 8aea422bc8ffa29c1c10a341b4847c0fdf51abd61d5b98b552a435ac5f532301 In test.sh line 27: for p in $(seq 0 ${OVPN_NUM_PEERS}); do ^---------------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: for p in $(seq 0 "${OVPN_NUM_PEERS}"); do In test.sh line 31: for p in $(seq 0 ${OVPN_NUM_PEERS}); do ^---------------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: for p in $(seq 0 "${OVPN_NUM_PEERS}"); do In test.sh line 36: for p in $(seq 0 ${OVPN_NUM_PEERS}); do ^---------------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: for p in $(seq 0 "${OVPN_NUM_PEERS}"); do In test.sh line 41: for p in $(seq 0 ${OVPN_NUM_PEERS}); do ^---------------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: for p in $(seq 0 "${OVPN_NUM_PEERS}"); do In test.sh line 45: for p in $(seq 1 ${OVPN_NUM_PEERS}); do ^---------------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: for p in $(seq 1 "${OVPN_NUM_PEERS}"); do In test.sh line 48: ip netns exec ovpn_peer0 ${OVPN_CLI} set_peer tun0 \ ^---------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip netns exec ovpn_peer0 "${OVPN_CLI}" set_peer tun0 \ In test.sh line 49: ${p} 60 120 ^--^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: "${p}" 60 120 In test.sh line 51: ip netns exec "${peer_ns}" ${OVPN_CLI} set_peer \ ^---------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip netns exec "${peer_ns}" "${OVPN_CLI}" set_peer \ In test.sh line 52: tun${p} $((p + OVPN_ID_OFFSET)) 60 120 ^--^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: tun"${p}" $((p + OVPN_ID_OFFSET)) 60 120 In test.sh line 66: for p in $(seq 1 ${OVPN_NUM_PEERS}); do ^---------------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: for p in $(seq 1 "${OVPN_NUM_PEERS}"); do In test.sh line 75: header1=$(printf "0x4800000%x" ${p}) ^--^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: header1=$(printf "0x4800000%x" "${p}") In test.sh line 84: timeout ${tcpdump_timeout} ip netns exec "${peer_ns}" \ ^----------------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: timeout "${tcpdump_timeout}" ip netns exec "${peer_ns}" \ In test.sh line 85: tcpdump --immediate-mode -p -ni veth${p} -c 1 \ ^--^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: tcpdump --immediate-mode -p -ni veth"${p}" -c 1 \ In test.sh line 89: timeout ${tcpdump_timeout} ip netns exec "${peer_ns}" \ ^----------------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: timeout "${tcpdump_timeout}" ip netns exec "${peer_ns}" \ In test.sh line 90: tcpdump --immediate-mode -p -ni veth${p} -c 1 \ ^--^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: tcpdump --immediate-mode -p -ni veth"${p}" -c 1 \ In test.sh line 117: for p in $(seq 1 ${OVPN_NUM_PEERS}); do ^---------------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: for p in $(seq 1 "${OVPN_NUM_PEERS}"); do In test.sh line 120: ip -n "${peer_ns}" addr del 10.10.${p}.2/24 dev veth${p} ^--^ SC2086 (info): Double quote to prevent globbing and word splitting. ^--^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip -n "${peer_ns}" addr del 10.10."${p}".2/24 dev veth"${p}" In test.sh line 122: ip -n "${peer_ns}" addr add 10.10.${p}.3/24 dev veth${p} ^--^ SC2086 (info): Double quote to prevent globbing and word splitting. ^--^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip -n "${peer_ns}" addr add 10.10."${p}".3/24 dev veth"${p}" In test.sh line 124: for p in $(seq 1 ${OVPN_NUM_PEERS}); do ^---------------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: for p in $(seq 1 "${OVPN_NUM_PEERS}"); do In test.sh line 148: for p in $(seq 1 ${OVPN_NUM_PEERS}); do ^---------------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: for p in $(seq 1 "${OVPN_NUM_PEERS}"); do In test.sh line 151: ip netns exec ovpn_peer0 ${OVPN_CLI} new_key tun0 \ ^---------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip netns exec ovpn_peer0 "${OVPN_CLI}" new_key tun0 \ In test.sh line 152: ${p} 2 1 ${OVPN_ALG} 0 data64.key ^--^ SC2086 (info): Double quote to prevent globbing and word splitting. ^---------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: "${p}" 2 1 "${OVPN_ALG}" 0 data64.key In test.sh line 154: ip netns exec "${peer_ns}" ${OVPN_CLI} new_key tun${p} \ ^---------^ SC2086 (info): Double quote to prevent globbing and word splitting. ^--^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip netns exec "${peer_ns}" "${OVPN_CLI}" new_key tun"${p}" \ In test.sh line 155: $((p + OVPN_ID_OFFSET)) 2 1 ${OVPN_ALG} 1 \ ^---------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: $((p + OVPN_ID_OFFSET)) 2 1 "${OVPN_ALG}" 1 \ In test.sh line 158: ip netns exec "${peer_ns}" ${OVPN_CLI} swap_keys \ ^---------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip netns exec "${peer_ns}" "${OVPN_CLI}" swap_keys \ In test.sh line 159: tun${p} $((p + OVPN_ID_OFFSET)) ^--^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: tun"${p}" $((p + OVPN_ID_OFFSET)) In test.sh line 167: ip netns exec ovpn_peer0 ${OVPN_CLI} get_peer tun0 ^---------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip netns exec ovpn_peer0 "${OVPN_CLI}" get_peer tun0 In test.sh line 169: ip netns exec ovpn_peer1 ${OVPN_CLI} get_peer tun1 ^---------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip netns exec ovpn_peer1 "${OVPN_CLI}" get_peer tun1 In test.sh line 174: ip netns exec ovpn_peer0 ${OVPN_CLI} get_peer tun0 1 ^---------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip netns exec ovpn_peer0 "${OVPN_CLI}" get_peer tun0 1 In test.sh line 181: ip netns exec ovpn_peer0 ${OVPN_CLI} get_peer tun0 20 ^---------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip netns exec ovpn_peer0 "${OVPN_CLI}" get_peer tun0 20 In test.sh line 191: ip netns exec ovpn_peer0 ${OVPN_CLI} del_peer tun0 1 ^---------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip netns exec ovpn_peer0 "${OVPN_CLI}" del_peer tun0 1 In test.sh line 193: ip netns exec ovpn_peer1 ${OVPN_CLI} del_peer tun1 \ ^---------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip netns exec ovpn_peer1 "${OVPN_CLI}" del_peer tun1 \ In test.sh line 198: for p in $(seq 2 ${OVPN_NUM_PEERS}); do ^---------------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: for p in $(seq 2 "${OVPN_NUM_PEERS}"); do In test.sh line 201: ip netns exec "${peer_ns}" ${OVPN_CLI} get_key tun${p} \ ^---------^ SC2086 (info): Double quote to prevent globbing and word splitting. ^--^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip netns exec "${peer_ns}" "${OVPN_CLI}" get_key tun"${p}" \ In test.sh line 204: ip netns exec "${peer_ns}" ${OVPN_CLI} get_key tun${p} \ ^---------^ SC2086 (info): Double quote to prevent globbing and word splitting. ^--^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip netns exec "${peer_ns}" "${OVPN_CLI}" get_key tun"${p}" \ In test.sh line 217: ip netns exec ovpn_peer0 ${OVPN_CLI} del_peer tun0 2 ^---------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip netns exec ovpn_peer0 "${OVPN_CLI}" del_peer tun0 2 In test.sh line 222: ip netns exec ovpn_peer2 ${OVPN_CLI} del_peer tun2 \ ^---------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip netns exec ovpn_peer2 "${OVPN_CLI}" del_peer tun2 \ In test.sh line 226: ${OVPN_CLI} del_peer tun2 $((2 + OVPN_ID_OFFSET)) ^---------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: "${OVPN_CLI}" del_peer tun2 $((2 + OVPN_ID_OFFSET)) In test.sh line 238: for p in $(seq 3 ${OVPN_NUM_PEERS}); do ^---------------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: for p in $(seq 3 "${OVPN_NUM_PEERS}"); do In test.sh line 241: ip netns exec "${peer_ns}" ${OVPN_CLI} del_key tun${p} \ ^---------^ SC2086 (info): Double quote to prevent globbing and word splitting. ^--^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip netns exec "${peer_ns}" "${OVPN_CLI}" del_key tun"${p}" \ In test.sh line 244: ip netns exec "${peer_ns}" ${OVPN_CLI} del_key tun${p} \ ^---------^ SC2086 (info): Double quote to prevent globbing and word splitting. ^--^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip netns exec "${peer_ns}" "${OVPN_CLI}" del_key tun"${p}" \ In test.sh line 255: for p in $(seq 3 ${OVPN_NUM_PEERS}); do ^---------------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: for p in $(seq 3 "${OVPN_NUM_PEERS}"); do In test.sh line 258: ip netns exec ovpn_peer0 ${OVPN_CLI} set_peer tun0 \ ^---------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip netns exec ovpn_peer0 "${OVPN_CLI}" set_peer tun0 \ In test.sh line 259: ${p} 3 3 ^--^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: "${p}" 3 3 In test.sh line 262: state" ip netns exec "${peer_ns}" ${OVPN_CLI} set_peer \ ^---------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: state" ip netns exec "${peer_ns}" "${OVPN_CLI}" set_peer \ In test.sh line 263: tun${p} $((p + OVPN_ID_OFFSET)) 0 0 ^--^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: tun"${p}" $((p + OVPN_ID_OFFSET)) 0 0 In test.sh line 270: for p in $(seq 3 ${OVPN_NUM_PEERS}); do ^---------------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: for p in $(seq 3 "${OVPN_NUM_PEERS}"); do In test.sh line 273: ip netns exec "${peer_ns}" ${OVPN_CLI} set_peer \ ^---------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip netns exec "${peer_ns}" "${OVPN_CLI}" set_peer \ In test.sh line 274: tun${p} $((p + OVPN_ID_OFFSET)) 3 3 ^--^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: tun"${p}" $((p + OVPN_ID_OFFSET)) 3 3 In test.sh line 282: for p in $(seq 0 ${OVPN_NUM_PEERS}); do ^---------------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: for p in $(seq 0 "${OVPN_NUM_PEERS}"); do For more information: https://www.shellcheck.net/wiki/SC2086 -- Double quote to prevent globbing ... ====== Checking the tree with the patch ====== Checking tools/testing/selftests/net/ovpn/test.sh - 8aea422bc8ffa29c1c10a341b4847c0fdf51abd61d5b98b552a435ac5f532301 In test.sh line 27: for p in $(seq 0 ${OVPN_NUM_PEERS}); do ^---------------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: for p in $(seq 0 "${OVPN_NUM_PEERS}"); do In test.sh line 31: for p in $(seq 0 ${OVPN_NUM_PEERS}); do ^---------------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: for p in $(seq 0 "${OVPN_NUM_PEERS}"); do In test.sh line 39: for p in $(seq 0 ${OVPN_NUM_PEERS}); do ^---------------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: for p in $(seq 0 "${OVPN_NUM_PEERS}"); do In test.sh line 44: for p in $(seq 0 ${OVPN_NUM_PEERS}); do ^---------------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: for p in $(seq 0 "${OVPN_NUM_PEERS}"); do In test.sh line 48: for p in $(seq 1 ${OVPN_NUM_PEERS}); do ^---------------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: for p in $(seq 1 "${OVPN_NUM_PEERS}"); do In test.sh line 51: ip netns exec ovpn_peer0 ${OVPN_CLI} set_peer tun0 \ ^---------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip netns exec ovpn_peer0 "${OVPN_CLI}" set_peer tun0 \ In test.sh line 52: ${p} 60 120 ^--^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: "${p}" 60 120 In test.sh line 54: ip netns exec "${peer_ns}" ${OVPN_CLI} set_peer \ ^---------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip netns exec "${peer_ns}" "${OVPN_CLI}" set_peer \ In test.sh line 55: tun${p} $((p + OVPN_ID_OFFSET)) 60 120 ^--^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: tun"${p}" $((p + OVPN_ID_OFFSET)) 60 120 In test.sh line 69: for p in $(seq 1 ${OVPN_NUM_PEERS}); do ^---------------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: for p in $(seq 1 "${OVPN_NUM_PEERS}"); do In test.sh line 78: header1=$(printf "0x4800000%x" ${p}) ^--^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: header1=$(printf "0x4800000%x" "${p}") In test.sh line 87: timeout ${tcpdump_timeout} ip netns exec "${peer_ns}" \ ^----------------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: timeout "${tcpdump_timeout}" ip netns exec "${peer_ns}" \ In test.sh line 88: tcpdump --immediate-mode -p -ni veth${p} -c 1 \ ^--^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: tcpdump --immediate-mode -p -ni veth"${p}" -c 1 \ In test.sh line 92: timeout ${tcpdump_timeout} ip netns exec "${peer_ns}" \ ^----------------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: timeout "${tcpdump_timeout}" ip netns exec "${peer_ns}" \ In test.sh line 93: tcpdump --immediate-mode -p -ni veth${p} -c 1 \ ^--^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: tcpdump --immediate-mode -p -ni veth"${p}" -c 1 \ In test.sh line 120: for p in $(seq 1 ${OVPN_NUM_PEERS}); do ^---------------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: for p in $(seq 1 "${OVPN_NUM_PEERS}"); do In test.sh line 123: ip -n "${peer_ns}" addr del 10.10.${p}.2/24 dev veth${p} ^--^ SC2086 (info): Double quote to prevent globbing and word splitting. ^--^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip -n "${peer_ns}" addr del 10.10."${p}".2/24 dev veth"${p}" In test.sh line 125: ip -n "${peer_ns}" addr add 10.10.${p}.3/24 dev veth${p} ^--^ SC2086 (info): Double quote to prevent globbing and word splitting. ^--^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip -n "${peer_ns}" addr add 10.10."${p}".3/24 dev veth"${p}" In test.sh line 127: for p in $(seq 1 ${OVPN_NUM_PEERS}); do ^---------------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: for p in $(seq 1 "${OVPN_NUM_PEERS}"); do In test.sh line 151: for p in $(seq 1 ${OVPN_NUM_PEERS}); do ^---------------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: for p in $(seq 1 "${OVPN_NUM_PEERS}"); do In test.sh line 154: ip netns exec ovpn_peer0 ${OVPN_CLI} new_key tun0 \ ^---------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip netns exec ovpn_peer0 "${OVPN_CLI}" new_key tun0 \ In test.sh line 155: ${p} 2 1 ${OVPN_ALG} 0 data64.key ^--^ SC2086 (info): Double quote to prevent globbing and word splitting. ^---------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: "${p}" 2 1 "${OVPN_ALG}" 0 data64.key In test.sh line 157: ip netns exec "${peer_ns}" ${OVPN_CLI} new_key tun${p} \ ^---------^ SC2086 (info): Double quote to prevent globbing and word splitting. ^--^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip netns exec "${peer_ns}" "${OVPN_CLI}" new_key tun"${p}" \ In test.sh line 158: $((p + OVPN_ID_OFFSET)) 2 1 ${OVPN_ALG} 1 \ ^---------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: $((p + OVPN_ID_OFFSET)) 2 1 "${OVPN_ALG}" 1 \ In test.sh line 161: ip netns exec "${peer_ns}" ${OVPN_CLI} swap_keys \ ^---------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip netns exec "${peer_ns}" "${OVPN_CLI}" swap_keys \ In test.sh line 162: tun${p} $((p + OVPN_ID_OFFSET)) ^--^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: tun"${p}" $((p + OVPN_ID_OFFSET)) In test.sh line 170: ip netns exec ovpn_peer0 ${OVPN_CLI} get_peer tun0 ^---------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip netns exec ovpn_peer0 "${OVPN_CLI}" get_peer tun0 In test.sh line 172: ip netns exec ovpn_peer1 ${OVPN_CLI} get_peer tun1 ^---------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip netns exec ovpn_peer1 "${OVPN_CLI}" get_peer tun1 In test.sh line 177: ip netns exec ovpn_peer0 ${OVPN_CLI} get_peer tun0 1 ^---------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip netns exec ovpn_peer0 "${OVPN_CLI}" get_peer tun0 1 In test.sh line 184: ip netns exec ovpn_peer0 ${OVPN_CLI} get_peer tun0 20 ^---------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip netns exec ovpn_peer0 "${OVPN_CLI}" get_peer tun0 20 In test.sh line 194: ip netns exec ovpn_peer0 ${OVPN_CLI} del_peer tun0 1 ^---------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip netns exec ovpn_peer0 "${OVPN_CLI}" del_peer tun0 1 In test.sh line 196: ip netns exec ovpn_peer1 ${OVPN_CLI} del_peer tun1 \ ^---------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip netns exec ovpn_peer1 "${OVPN_CLI}" del_peer tun1 \ In test.sh line 201: for p in $(seq 2 ${OVPN_NUM_PEERS}); do ^---------------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: for p in $(seq 2 "${OVPN_NUM_PEERS}"); do In test.sh line 204: ip netns exec "${peer_ns}" ${OVPN_CLI} get_key tun${p} \ ^---------^ SC2086 (info): Double quote to prevent globbing and word splitting. ^--^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip netns exec "${peer_ns}" "${OVPN_CLI}" get_key tun"${p}" \ In test.sh line 207: ip netns exec "${peer_ns}" ${OVPN_CLI} get_key tun${p} \ ^---------^ SC2086 (info): Double quote to prevent globbing and word splitting. ^--^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip netns exec "${peer_ns}" "${OVPN_CLI}" get_key tun"${p}" \ In test.sh line 220: ip netns exec ovpn_peer0 ${OVPN_CLI} del_peer tun0 2 ^---------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip netns exec ovpn_peer0 "${OVPN_CLI}" del_peer tun0 2 In test.sh line 225: ip netns exec ovpn_peer2 ${OVPN_CLI} del_peer tun2 \ ^---------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip netns exec ovpn_peer2 "${OVPN_CLI}" del_peer tun2 \ In test.sh line 229: ${OVPN_CLI} del_peer tun2 $((2 + OVPN_ID_OFFSET)) ^---------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: "${OVPN_CLI}" del_peer tun2 $((2 + OVPN_ID_OFFSET)) In test.sh line 241: for p in $(seq 3 ${OVPN_NUM_PEERS}); do ^---------------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: for p in $(seq 3 "${OVPN_NUM_PEERS}"); do In test.sh line 244: ip netns exec "${peer_ns}" ${OVPN_CLI} del_key tun${p} \ ^---------^ SC2086 (info): Double quote to prevent globbing and word splitting. ^--^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip netns exec "${peer_ns}" "${OVPN_CLI}" del_key tun"${p}" \ In test.sh line 247: ip netns exec "${peer_ns}" ${OVPN_CLI} del_key tun${p} \ ^---------^ SC2086 (info): Double quote to prevent globbing and word splitting. ^--^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip netns exec "${peer_ns}" "${OVPN_CLI}" del_key tun"${p}" \ In test.sh line 258: for p in $(seq 3 ${OVPN_NUM_PEERS}); do ^---------------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: for p in $(seq 3 "${OVPN_NUM_PEERS}"); do In test.sh line 261: ip netns exec ovpn_peer0 ${OVPN_CLI} set_peer tun0 \ ^---------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip netns exec ovpn_peer0 "${OVPN_CLI}" set_peer tun0 \ In test.sh line 262: ${p} 3 3 ^--^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: "${p}" 3 3 In test.sh line 265: state" ip netns exec "${peer_ns}" ${OVPN_CLI} set_peer \ ^---------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: state" ip netns exec "${peer_ns}" "${OVPN_CLI}" set_peer \ In test.sh line 266: tun${p} $((p + OVPN_ID_OFFSET)) 0 0 ^--^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: tun"${p}" $((p + OVPN_ID_OFFSET)) 0 0 In test.sh line 273: for p in $(seq 3 ${OVPN_NUM_PEERS}); do ^---------------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: for p in $(seq 3 "${OVPN_NUM_PEERS}"); do In test.sh line 276: ip netns exec "${peer_ns}" ${OVPN_CLI} set_peer \ ^---------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip netns exec "${peer_ns}" "${OVPN_CLI}" set_peer \ In test.sh line 277: tun${p} $((p + OVPN_ID_OFFSET)) 3 3 ^--^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: tun"${p}" $((p + OVPN_ID_OFFSET)) 3 3 In test.sh line 285: for p in $(seq 0 ${OVPN_NUM_PEERS}); do ^---------------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: for p in $(seq 0 "${OVPN_NUM_PEERS}"); do For more information: https://www.shellcheck.net/wiki/SC2086 -- Double quote to prevent globbing ...