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.hfPF5JOB1T and /tmp/tmp.7SHw3b80OP Tree base: 39b2f18a3e76 ("icmp: fix ICMP error source address when xfrm policy matches") Now at: b0d178abf647 ("selftests: net: add ICMP error source address test over xfrm tunnel") ====== Checking before the patch ====== ====== Checking the tree with the patch ====== Checking tools/testing/selftests/net/xfrm_state.sh - 8e60a6437bcbac5630b6e9dfa83c2b6a30e7dbb3e86a1349740e62a24f41ecc2 In xfrm_state.sh line 49: run_cmd_err() { ^-- SC2329 (info): This function is never invoked. Check usage (or ignored if invoked indirectly). In xfrm_state.sh line 53: printf " COMMAND: $cmd\n" ^-------------------^ SC2059 (info): Don't use variables in the printf format string. Use printf '..%s..' "$foo". In xfrm_state.sh line 64: run_cmd() { ^-- SC2329 (info): This function is never invoked. Check usage (or ignored if invoked indirectly). In xfrm_state.sh line 78: tdesc="$2" ^---^ SC2030 (info): Modification of tdesc is local (to subshell caused by (..) group). In xfrm_state.sh line 82: fail="yes" ^--^ SC2030 (info): Modification of fail is local (to subshell caused by (..) group). In xfrm_state.sh line 93: eval test_${tname} ^------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: eval test_"${tname}" In xfrm_state.sh line 115: $ksft_skip) ^--------^ SC2254 (warning): Quote expansions in case patterns to match literally rather than as a glob. In xfrm_state.sh line 128: nsname() { ^-- SC2329 (info): This function is never invoked. Check usage (or ignored if invoked indirectly). In xfrm_state.sh line 129: eval echo ns_$1 ^-- SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: eval echo ns_"$1" In xfrm_state.sh line 132: nscmd() { ^-- SC2329 (info): This function is never invoked. Check usage (or ignored if invoked indirectly). In xfrm_state.sh line 136: setup_namespaces() { ^-- SC2329 (info): This function is never invoked. Check usage (or ignored if invoked indirectly). In xfrm_state.sh line 152: setup_ns $namespaces ^---------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: setup_ns "$namespaces" In xfrm_state.sh line 157: [ -n "${NS_R1}" ] && ns_r1="ip netns exec ${NS_R1}" && ns_active="${ns_active} $NS_R1" ^---^ SC2034 (warning): ns_r1 appears unused. Verify use (or export if used externally). In xfrm_state.sh line 162: [ -n "${NS_B}" ] && ns_b="ip netns exec ${NS_B}" && ns_active="${ns_active} $NS_B" ^--^ SC2034 (warning): ns_b appears unused. Verify use (or export if used externally). In xfrm_state.sh line 165: addr_add() { ^-- SC2329 (info): This function is never invoked. Check usage (or ignored if invoked indirectly). In xfrm_state.sh line 166: local ns_cmd=$(nscmd $1) ^----^ SC2155 (warning): Declare and assign separately to avoid masking return values. ^-- SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: local ns_cmd=$(nscmd "$1") In xfrm_state.sh line 170: run_cmd ${ns_cmd} ip addr add ${ip} dev ${dev} ^-------^ SC2086 (info): Double quote to prevent globbing and word splitting. ^---^ SC2086 (info): Double quote to prevent globbing and word splitting. ^----^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: run_cmd "${ns_cmd}" ip addr add "${ip}" dev "${dev}" In xfrm_state.sh line 171: run_cmd ${ns_cmd} ip link set up ${dev} ^-------^ SC2086 (info): Double quote to prevent globbing and word splitting. ^----^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: run_cmd "${ns_cmd}" ip link set up "${dev}" In xfrm_state.sh line 174: veth_add() { ^-- SC2329 (info): This function is never invoked. Check usage (or ignored if invoked indirectly). In xfrm_state.sh line 177: local ns_cmd=$(nscmd ${pns}) ^----^ SC2155 (warning): Declare and assign separately to avoid masking return values. ^----^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: local ns_cmd=$(nscmd "${pns}") In xfrm_state.sh line 180: run_cmd ${ns_cmd} ip link add ${ln} type veth peer name ${rn} netns $ns ^-------^ SC2086 (info): Double quote to prevent globbing and word splitting. ^---^ SC2086 (info): Double quote to prevent globbing and word splitting. ^---^ SC2086 (info): Double quote to prevent globbing and word splitting. ^-^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: run_cmd "${ns_cmd}" ip link add "${ln}" type veth peer name "${rn}" netns "$ns" In xfrm_state.sh line 183: setup_icmp_filter() { ^-- SC2329 (info): This function is never invoked. Check usage (or ignored if invoked indirectly). In xfrm_state.sh line 186: run_cmd ${ns_cmd} nft add table inet filter ^-------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: run_cmd "${ns_cmd}" nft add table inet filter In xfrm_state.sh line 187: run_cmd ${ns_cmd} nft add chain inet filter FORWARD \ ^-------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: run_cmd "${ns_cmd}" nft add chain inet filter FORWARD \ In xfrm_state.sh line 188: { type filter hook forward priority filter\; policy drop \; } ^-- SC1083 (warning): This { is literal. Check expression (missing ;/\n?) or quote it. ^-- SC1083 (warning): This } is literal. Check expression (missing ;/\n?) or quote it. In xfrm_state.sh line 189: run_cmd ${ns_cmd} nft add rule inet filter FORWARD counter ip protocol esp \ ^-------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: run_cmd "${ns_cmd}" nft add rule inet filter FORWARD counter ip protocol esp \ In xfrm_state.sh line 191: run_cmd ${ns_cmd} nft add rule inet filter FORWARD counter ip protocol \ ^-------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: run_cmd "${ns_cmd}" nft add rule inet filter FORWARD counter ip protocol \ In xfrm_state.sh line 195: run_cmd ${ns_cmd} nft list ruleset ^-------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: run_cmd "${ns_cmd}" nft list ruleset In xfrm_state.sh line 200: setup_icmpv6_filter() { ^-- SC2329 (info): This function is never invoked. Check usage (or ignored if invoked indirectly). In xfrm_state.sh line 203: run_cmd ${ns_cmd} nft add table inet filter ^-------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: run_cmd "${ns_cmd}" nft add table inet filter In xfrm_state.sh line 204: run_cmd ${ns_cmd} nft add chain inet filter FORWARD { type filter \ ^-------^ SC2086 (info): Double quote to prevent globbing and word splitting. ^-- SC1083 (warning): This { is literal. Check expression (missing ;/\n?) or quote it. Did you mean: run_cmd "${ns_cmd}" nft add chain inet filter FORWARD { type filter \ In xfrm_state.sh line 205: hook forward priority filter\; policy drop \; } ^-- SC1083 (warning): This } is literal. Check expression (missing ;/\n?) or quote it. In xfrm_state.sh line 206: run_cmd ${ns_cmd} nft add rule inet filter FORWARD ip6 nexthdr \ ^-------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: run_cmd "${ns_cmd}" nft add rule inet filter FORWARD ip6 nexthdr \ In xfrm_state.sh line 208: run_cmd ${ns_cmd} nft add rule inet filter FORWARD ip6 nexthdr esp \ ^-------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: run_cmd "${ns_cmd}" nft add rule inet filter FORWARD ip6 nexthdr esp \ In xfrm_state.sh line 210: run_cmd ${ns_cmd} nft add rule inet filter FORWARD ip6 nexthdr \ ^-------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: run_cmd "${ns_cmd}" nft add rule inet filter FORWARD ip6 nexthdr \ In xfrm_state.sh line 211: ipv6-icmp icmpv6 type {nd-neighbor-solicit,nd-neighbor-advert, \ ^-- SC1083 (warning): This { is literal. Check expression (missing ;/\n?) or quote it. In xfrm_state.sh line 212: nd-router-solicit,nd-router-advert} counter log drop ^-- SC1083 (warning): This } is literal. Check expression (missing ;/\n?) or quote it. In xfrm_state.sh line 214: run_cmd ${ns_cmd} nft list ruleset ^-------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: run_cmd "${ns_cmd}" nft list ruleset In xfrm_state.sh line 219: ns_set() { ^-- SC2329 (info): This function is never invoked. Check usage (or ignored if invoked indirectly). In xfrm_state.sh line 226: setup_ns_set_v4() { ^-- SC2329 (info): This function is never invoked. Check usage (or ignored if invoked indirectly). In xfrm_state.sh line 243: setup_ns_set_v4x() { ^-- SC2329 (info): This function is never invoked. Check usage (or ignored if invoked indirectly). In xfrm_state.sh line 258: setup_ns_set_v6() { ^-- SC2329 (info): This function is never invoked. Check usage (or ignored if invoked indirectly). In xfrm_state.sh line 273: setup_ns_set_v6x() { ^-- SC2329 (info): This function is never invoked. Check usage (or ignored if invoked indirectly). In xfrm_state.sh line 288: setup_network() { ^-- SC2329 (info): This function is never invoked. Check usage (or ignored if invoked indirectly). In xfrm_state.sh line 293: ns_cmd=$(nscmd ${ns}) ^---^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ns_cmd=$(nscmd "${ns}") In xfrm_state.sh line 295: if [ ${i} -ne 1 ]; then ^--^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: if [ "${i}" -ne 1 ]; then In xfrm_state.sh line 297: veth_add ${p} ${ns} ^--^ SC2086 (info): Double quote to prevent globbing and word splitting. ^---^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: veth_add "${p}" "${ns}" In xfrm_state.sh line 299: addr_add ${p} "${prefix}${s}$((i-1))${S}1/${prefix_len}" eth0 ^--^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: addr_add "${p}" "${prefix}${s}$((i-1))${S}1/${prefix_len}" eth0 In xfrm_state.sh line 300: addr_add ${ns} "${prefix}${s}$((i-1))${S}2/${prefix_len}" eth1 ^---^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: addr_add "${ns}" "${prefix}${s}$((i-1))${S}2/${prefix_len}" eth1 In xfrm_state.sh line 304: run_cmd ${ns_cmd} sysctl -q net/ipv4/ip_forward=1 ^-------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: run_cmd "${ns_cmd}" sysctl -q net/ipv4/ip_forward=1 In xfrm_state.sh line 305: run_cmd ${ns_cmd} sysctl -q net/ipv6/conf/all/forwarding=1 ^-------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: run_cmd "${ns_cmd}" sysctl -q net/ipv6/conf/all/forwarding=1 In xfrm_state.sh line 306: run_cmd ${ns_cmd} sysctl -q net/ipv6/conf/default/accept_dad=0 ^-------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: run_cmd "${ns_cmd}" sysctl -q net/ipv6/conf/default/accept_dad=0 In xfrm_state.sh line 315: ns_cmd=$(nscmd ${ns}) ^---^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ns_cmd=$(nscmd "${ns}") In xfrm_state.sh line 318: if [ ${i} -ne ${imax} ]; then ^--^ SC2086 (info): Double quote to prevent globbing and word splitting. ^-----^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: if [ "${i}" -ne "${imax}" ]; then In xfrm_state.sh line 320: for j in $(seq $((i + 1)) ${imax}); do ^-----^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: for j in $(seq $((i + 1)) "${imax}"); do In xfrm_state.sh line 321: run_cmd ${ns_cmd} ip route replace \ ^-------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: run_cmd "${ns_cmd}" ip route replace \ In xfrm_state.sh line 322: "${prefix}${s}${j}${S}0/${prefix_len}" via ${nhf} ^----^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: "${prefix}${s}${j}${S}0/${prefix_len}" via "${nhf}" In xfrm_state.sh line 327: if [ ${i} -gt 1 ]; then ^--^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: if [ "${i}" -gt 1 ]; then In xfrm_state.sh line 330: run_cmd ${ns_cmd} ip route replace \ ^-------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: run_cmd "${ns_cmd}" ip route replace \ In xfrm_state.sh line 331: "${prefix}${s}${j}${S}0/${prefix_len}" via ${nhr} ^----^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: "${prefix}${s}${j}${S}0/${prefix_len}" via "${nhr}" In xfrm_state.sh line 339: setup_xfrm_mode() { ^-- SC2329 (info): This function is never invoked. Check usage (or ignored if invoked indirectly). In xfrm_state.sh line 347: run_cmd ${ns_s1} ip xfrm policy add src ${s1_src_net} dst ${s1_dst_net} dir out \ ^------^ SC2086 (info): Double quote to prevent globbing and word splitting. ^-----------^ SC2086 (info): Double quote to prevent globbing and word splitting. ^-----------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: run_cmd "${ns_s1}" ip xfrm policy add src "${s1_src_net}" dst "${s1_dst_net}" dir out \ In xfrm_state.sh line 348: tmpl src ${s1_src} dst ${s1_dst} proto esp reqid 1 mode ${MODE} ^-------^ SC2086 (info): Double quote to prevent globbing and word splitting. ^-------^ SC2086 (info): Double quote to prevent globbing and word splitting. ^-----^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: tmpl src "${s1_src}" dst "${s1_dst}" proto esp reqid 1 mode "${MODE}" In xfrm_state.sh line 352: run_cmd ${ns_s1} ip xfrm policy add src ${s1_dst_net} dst ${s1_src_net} dir fwd \ ^------^ SC2086 (info): Double quote to prevent globbing and word splitting. ^-----------^ SC2086 (info): Double quote to prevent globbing and word splitting. ^-----------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: run_cmd "${ns_s1}" ip xfrm policy add src "${s1_dst_net}" dst "${s1_src_net}" dir fwd \ In xfrm_state.sh line 353: flag icmp tmpl src ${s1_dst} dst ${s1_src} proto esp reqid 2 mode ${MODE} ^-------^ SC2086 (info): Double quote to prevent globbing and word splitting. ^-------^ SC2086 (info): Double quote to prevent globbing and word splitting. ^-----^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: flag icmp tmpl src "${s1_dst}" dst "${s1_src}" proto esp reqid 2 mode "${MODE}" In xfrm_state.sh line 355: run_cmd ${ns_s1} ip xfrm state add src ${s1_src} dst ${s1_dst} proto esp spi 1 \ ^------^ SC2086 (info): Double quote to prevent globbing and word splitting. ^-------^ SC2086 (info): Double quote to prevent globbing and word splitting. ^-------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: run_cmd "${ns_s1}" ip xfrm state add src "${s1_src}" dst "${s1_dst}" proto esp spi 1 \ In xfrm_state.sh line 356: reqid 1 mode ${MODE} aead 'rfc4106(gcm(aes))' \ ^-----^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: reqid 1 mode "${MODE}" aead 'rfc4106(gcm(aes))' \ In xfrm_state.sh line 358: sel src ${s1_src_net} dst ${s1_dst_net} dir out ^-----------^ SC2086 (info): Double quote to prevent globbing and word splitting. ^-----------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: sel src "${s1_src_net}" dst "${s1_dst_net}" dir out In xfrm_state.sh line 360: run_cmd ${ns_s1} ip xfrm state add src ${s1_dst} dst ${s1_src} proto esp spi 2 \ ^------^ SC2086 (info): Double quote to prevent globbing and word splitting. ^-------^ SC2086 (info): Double quote to prevent globbing and word splitting. ^-------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: run_cmd "${ns_s1}" ip xfrm state add src "${s1_dst}" dst "${s1_src}" proto esp spi 2 \ In xfrm_state.sh line 361: reqid 2 flag icmp replay-window 8 mode ${MODE} aead 'rfc4106(gcm(aes))' \ ^-----^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: reqid 2 flag icmp replay-window 8 mode "${MODE}" aead 'rfc4106(gcm(aes))' \ In xfrm_state.sh line 363: sel src ${s1_dst_net} dst ${s1_src_net} dir in ^-----------^ SC2086 (info): Double quote to prevent globbing and word splitting. ^-----------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: sel src "${s1_dst_net}" dst "${s1_src_net}" dir in In xfrm_state.sh line 365: run_cmd ${ns_s2} ip xfrm policy add src ${s1_dst_net} dst ${s1_src_net} dir out \ ^------^ SC2086 (info): Double quote to prevent globbing and word splitting. ^-----------^ SC2086 (info): Double quote to prevent globbing and word splitting. ^-----------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: run_cmd "${ns_s2}" ip xfrm policy add src "${s1_dst_net}" dst "${s1_src_net}" dir out \ In xfrm_state.sh line 366: flag icmp tmpl src ${s1_dst} dst ${s1_src} proto esp reqid 2 mode ${MODE} ^-------^ SC2086 (info): Double quote to prevent globbing and word splitting. ^-------^ SC2086 (info): Double quote to prevent globbing and word splitting. ^-----^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: flag icmp tmpl src "${s1_dst}" dst "${s1_src}" proto esp reqid 2 mode "${MODE}" In xfrm_state.sh line 368: run_cmd ${ns_s2} ip xfrm policy add src ${s1_src_net} dst ${s1_dst_net} dir fwd \ ^------^ SC2086 (info): Double quote to prevent globbing and word splitting. ^-----------^ SC2086 (info): Double quote to prevent globbing and word splitting. ^-----------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: run_cmd "${ns_s2}" ip xfrm policy add src "${s1_src_net}" dst "${s1_dst_net}" dir fwd \ In xfrm_state.sh line 369: tmpl src ${s1_src} dst ${s1_dst} proto esp reqid 1 mode ${MODE} ^-------^ SC2086 (info): Double quote to prevent globbing and word splitting. ^-------^ SC2086 (info): Double quote to prevent globbing and word splitting. ^-----^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: tmpl src "${s1_src}" dst "${s1_dst}" proto esp reqid 1 mode "${MODE}" In xfrm_state.sh line 371: run_cmd ${ns_s2} ip xfrm state add src ${s1_dst} dst ${s1_src} proto esp spi 2 \ ^------^ SC2086 (info): Double quote to prevent globbing and word splitting. ^-------^ SC2086 (info): Double quote to prevent globbing and word splitting. ^-------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: run_cmd "${ns_s2}" ip xfrm state add src "${s1_dst}" dst "${s1_src}" proto esp spi 2 \ In xfrm_state.sh line 372: reqid 2 mode ${MODE} aead 'rfc4106(gcm(aes))' \ ^-----^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: reqid 2 mode "${MODE}" aead 'rfc4106(gcm(aes))' \ In xfrm_state.sh line 374: sel src ${s1_dst_net} dst ${s1_src_net} dir out ^-----------^ SC2086 (info): Double quote to prevent globbing and word splitting. ^-----------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: sel src "${s1_dst_net}" dst "${s1_src_net}" dir out In xfrm_state.sh line 376: run_cmd ${ns_s2} ip xfrm state add src ${s1_src} dst ${s1_dst} proto esp spi 1 \ ^------^ SC2086 (info): Double quote to prevent globbing and word splitting. ^-------^ SC2086 (info): Double quote to prevent globbing and word splitting. ^-------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: run_cmd "${ns_s2}" ip xfrm state add src "${s1_src}" dst "${s1_dst}" proto esp spi 1 \ In xfrm_state.sh line 377: reqid 1 flag icmp replay-window 8 mode ${MODE} aead 'rfc4106(gcm(aes))' \ ^-----^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: reqid 1 flag icmp replay-window 8 mode "${MODE}" aead 'rfc4106(gcm(aes))' \ In xfrm_state.sh line 379: sel src ${s1_src_net} dst ${s1_dst_net} dir in ^-----------^ SC2086 (info): Double quote to prevent globbing and word splitting. ^-----------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: sel src "${s1_src_net}" dst "${s1_dst_net}" dir in In xfrm_state.sh line 382: setup_xfrm() { ^-- SC2329 (info): This function is never invoked. Check usage (or ignored if invoked indirectly). In xfrm_state.sh line 386: setup() { ^-- SC2329 (info): This function is never invoked. Check usage (or ignored if invoked indirectly). In xfrm_state.sh line 387: [ "$(id -u)" -ne 0 ] && echo " need to run as root" && return $ksft_skip ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: [ "$(id -u)" -ne 0 ] && echo " need to run as root" && return "$ksft_skip" In xfrm_state.sh line 390: eval setup_${arg} || { ^----^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: eval setup_"${arg}" || { In xfrm_state.sh line 397: pause() { ^-- SC2329 (info): This function is never invoked. Check usage (or ignored if invoked indirectly). In xfrm_state.sh line 400: read a ^--^ SC2162 (info): read without -r will mangle backslashes. In xfrm_state.sh line 403: log_test_error() { ^-- SC2329 (info): This function is never invoked. Check usage (or ignored if invoked indirectly). In xfrm_state.sh line 404: if [ "${fail}" = "yes" -a -n "${tdesc}" ]; then ^-----^ SC2031 (info): fail was modified in a subshell. That change might be lost. ^-- SC2166 (warning): Prefer [ p ] && [ q ] as [ p -a q ] is not well defined. ^------^ SC2031 (info): tdesc was modified in a subshell. That change might be lost. In xfrm_state.sh line 405: printf "TEST: %-60s [ FAIL ] ${name}\n" "${tdesc}" ^------^ SC2031 (info): tdesc was modified in a subshell. That change might be lost. In xfrm_state.sh line 411: cleanup() { ^-- SC2329 (info): This function is never invoked. Check usage (or ignored if invoked indirectly). In xfrm_state.sh line 412: [[ "$PAUSE" = "always" || ( "$PAUSE" = "fail" && "$fail" = "yes" ) ]] && pause ^---^ SC2031 (info): fail was modified in a subshell. That change might be lost. In xfrm_state.sh line 414: [ "${EXIT_ON_TEST_FAIL}" = "yes" -a "${fail}" = "yes" ] && exit 1 ^-- SC2166 (warning): Prefer [ p ] && [ q ] as [ p -a q ] is not well defined. ^-----^ SC2031 (info): fail was modified in a subshell. That change might be lost. In xfrm_state.sh line 417: test_unreachable_ipv6() { ^-- SC2329 (info): This function is never invoked. Check usage (or ignored if invoked indirectly). In xfrm_state.sh line 418: setup ns_set_v6 namespaces network xfrm icmpv6_filter || return $ksft_skip ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: setup ns_set_v6 namespaces network xfrm icmpv6_filter || return "$ksft_skip" In xfrm_state.sh line 419: run_cmd ${ns_a} ping -W 5 -w 4 -c 1 fc00:6::2 ^-----^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: run_cmd "${ns_a}" ping -W 5 -w 4 -c 1 fc00:6::2 In xfrm_state.sh line 420: run_cmd_err ${ns_a} ping -W 5 -w 4 -c 1 fc00:6::3 ^-----^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: run_cmd_err "${ns_a}" ping -W 5 -w 4 -c 1 fc00:6::3 In xfrm_state.sh line 423: return ${rc} ^---^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: return "${rc}" In xfrm_state.sh line 426: test_unreachable_gw_ipv6() { ^-- SC2329 (info): This function is never invoked. Check usage (or ignored if invoked indirectly). In xfrm_state.sh line 427: setup ns_set_v6x namespaces network xfrm icmpv6_filter || return $ksft_skip ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: setup ns_set_v6x namespaces network xfrm icmpv6_filter || return "$ksft_skip" In xfrm_state.sh line 428: run_cmd ${ns_a} ping -W 5 -w 4 -c 1 fc00:5::2 ^-----^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: run_cmd "${ns_a}" ping -W 5 -w 4 -c 1 fc00:5::2 In xfrm_state.sh line 429: run_cmd_err ${ns_a} ping -W 5 -w 4 -c 1 fc00:5::3 ^-----^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: run_cmd_err "${ns_a}" ping -W 5 -w 4 -c 1 fc00:5::3 In xfrm_state.sh line 432: return ${rc} ^---^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: return "${rc}" In xfrm_state.sh line 435: test_unreachable_ipv4() { ^-- SC2329 (info): This function is never invoked. Check usage (or ignored if invoked indirectly). In xfrm_state.sh line 436: setup ns_set_v4 namespaces network icmp_filter xfrm || return $ksft_skip ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: setup ns_set_v4 namespaces network icmp_filter xfrm || return "$ksft_skip" In xfrm_state.sh line 437: run_cmd ${ns_a} ping -W 5 -w 4 -c 1 10.1.6.2 ^-----^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: run_cmd "${ns_a}" ping -W 5 -w 4 -c 1 10.1.6.2 In xfrm_state.sh line 438: run_cmd_err ${ns_a} ping -W 5 -w 4 -c 1 10.1.6.3 ^-----^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: run_cmd_err "${ns_a}" ping -W 5 -w 4 -c 1 10.1.6.3 In xfrm_state.sh line 441: return ${rc} ^---^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: return "${rc}" In xfrm_state.sh line 444: test_unreachable_gw_ipv4() { ^-- SC2329 (info): This function is never invoked. Check usage (or ignored if invoked indirectly). In xfrm_state.sh line 445: setup ns_set_v4x namespaces network icmp_filter xfrm || return $ksft_skip ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: setup ns_set_v4x namespaces network icmp_filter xfrm || return "$ksft_skip" In xfrm_state.sh line 446: run_cmd ${ns_a} ping -W 5 -w 4 -c 1 10.1.5.2 ^-----^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: run_cmd "${ns_a}" ping -W 5 -w 4 -c 1 10.1.5.2 In xfrm_state.sh line 447: run_cmd_err ${ns_a} ping -W 5 -w 4 -c 1 10.1.5.3 ^-----^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: run_cmd_err "${ns_a}" ping -W 5 -w 4 -c 1 10.1.5.3 In xfrm_state.sh line 450: return ${rc} ^---^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: return "${rc}" In xfrm_state.sh line 453: test_mtu_ipv4_r2() { ^-- SC2329 (info): This function is never invoked. Check usage (or ignored if invoked indirectly). In xfrm_state.sh line 454: setup ns_set_v4 namespaces network icmp_filter xfrm || return $ksft_skip ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: setup ns_set_v4 namespaces network icmp_filter xfrm || return "$ksft_skip" In xfrm_state.sh line 455: run_cmd ${ns_a} ping -W 5 -w 4 -c 1 10.1.6.2 ^-----^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: run_cmd "${ns_a}" ping -W 5 -w 4 -c 1 10.1.6.2 In xfrm_state.sh line 456: run_cmd ${ns_r2} ip route replace 10.1.3.0/24 dev eth1 src 10.1.3.2 mtu 1300 ^------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: run_cmd "${ns_r2}" ip route replace 10.1.3.0/24 dev eth1 src 10.1.3.2 mtu 1300 In xfrm_state.sh line 457: run_cmd ${ns_r2} ip route replace 10.1.4.0/24 dev eth0 src 10.1.4.1 mtu 1300 ^------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: run_cmd "${ns_r2}" ip route replace 10.1.4.0/24 dev eth0 src 10.1.4.1 mtu 1300 In xfrm_state.sh line 458: run_cmd ${ns_a} ping -M do -s 1300 -W 5 -w 4 -c 1 10.1.6.2 || true ^-----^ SC2086 (info): Double quote to prevent globbing and word splitting. ^-- SC1010 (warning): Use semicolon or linefeed before 'do' (or quote to make it literal). Did you mean: run_cmd "${ns_a}" ping -M do -s 1300 -W 5 -w 4 -c 1 10.1.6.2 || true In xfrm_state.sh line 461: return ${rc} ^---^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: return "${rc}" In xfrm_state.sh line 464: test_mtu_ipv6_r2() { ^-- SC2329 (info): This function is never invoked. Check usage (or ignored if invoked indirectly). In xfrm_state.sh line 465: setup ns_set_v6 namespaces network xfrm icmpv6_filter || return $ksft_skip ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: setup ns_set_v6 namespaces network xfrm icmpv6_filter || return "$ksft_skip" In xfrm_state.sh line 466: run_cmd ${ns_a} ping -W 5 -w 4 -c 1 fc00:6::2 ^-----^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: run_cmd "${ns_a}" ping -W 5 -w 4 -c 1 fc00:6::2 In xfrm_state.sh line 467: run_cmd ${ns_r2} ip -6 route replace fc00:3::/64 dev eth1 metric 256 src fc00:3::2 mtu 1300 ^------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: run_cmd "${ns_r2}" ip -6 route replace fc00:3::/64 dev eth1 metric 256 src fc00:3::2 mtu 1300 In xfrm_state.sh line 468: run_cmd ${ns_r2} ip -6 route replace fc00:4::/64 dev eth0 metric 256 src fc00:4::1 mtu 1300 ^------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: run_cmd "${ns_r2}" ip -6 route replace fc00:4::/64 dev eth0 metric 256 src fc00:4::1 mtu 1300 In xfrm_state.sh line 469: run_cmd ${ns_a} ping -M do -s 1300 -W 5 -w 4 -c 1 fc00:6::2 || true ^-----^ SC2086 (info): Double quote to prevent globbing and word splitting. ^-- SC1010 (warning): Use semicolon or linefeed before 'do' (or quote to make it literal). Did you mean: run_cmd "${ns_a}" ping -M do -s 1300 -W 5 -w 4 -c 1 fc00:6::2 || true In xfrm_state.sh line 472: return ${rc} ^---^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: return "${rc}" In xfrm_state.sh line 475: test_mtu_ipv4_r3() { ^-- SC2329 (info): This function is never invoked. Check usage (or ignored if invoked indirectly). In xfrm_state.sh line 476: setup ns_set_v4 namespaces network icmp_filter xfrm || return $ksft_skip ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: setup ns_set_v4 namespaces network icmp_filter xfrm || return "$ksft_skip" In xfrm_state.sh line 477: run_cmd ${ns_a} ping -W 5 -w 4 -c 1 10.1.6.2 ^-----^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: run_cmd "${ns_a}" ping -W 5 -w 4 -c 1 10.1.6.2 In xfrm_state.sh line 478: run_cmd ${ns_r3} ip route replace 10.1.6.0/24 dev eth0 mtu 1300 ^------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: run_cmd "${ns_r3}" ip route replace 10.1.6.0/24 dev eth0 mtu 1300 In xfrm_state.sh line 479: run_cmd ${ns_a} ping -M do -s 1350 -W 5 -w 4 -c 1 10.1.6.2 || true ^-----^ SC2086 (info): Double quote to prevent globbing and word splitting. ^-- SC1010 (warning): Use semicolon or linefeed before 'do' (or quote to make it literal). Did you mean: run_cmd "${ns_a}" ping -M do -s 1350 -W 5 -w 4 -c 1 10.1.6.2 || true In xfrm_state.sh line 482: return ${rc} ^---^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: return "${rc}" In xfrm_state.sh line 485: test_mtu_ipv4_s2() { ^-- SC2329 (info): This function is never invoked. Check usage (or ignored if invoked indirectly). In xfrm_state.sh line 486: setup ns_set_v4x namespaces network icmp_filter xfrm || return $ksft_skip ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: setup ns_set_v4x namespaces network icmp_filter xfrm || return "$ksft_skip" In xfrm_state.sh line 487: run_cmd ${ns_a} ping -W 5 -w 4 -c 1 10.1.5.2 ^-----^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: run_cmd "${ns_a}" ping -W 5 -w 4 -c 1 10.1.5.2 In xfrm_state.sh line 488: run_cmd ${ns_s2} ip route replace 10.1.5.0/24 dev eth0 src 10.1.5.1 mtu 1300 ^------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: run_cmd "${ns_s2}" ip route replace 10.1.5.0/24 dev eth0 src 10.1.5.1 mtu 1300 In xfrm_state.sh line 489: run_cmd ${ns_a} ping -M do -s 1350 -W 5 -w 4 -c 1 10.1.5.2 || true ^-----^ SC2086 (info): Double quote to prevent globbing and word splitting. ^-- SC1010 (warning): Use semicolon or linefeed before 'do' (or quote to make it literal). Did you mean: run_cmd "${ns_a}" ping -M do -s 1350 -W 5 -w 4 -c 1 10.1.5.2 || true In xfrm_state.sh line 492: return ${rc} ^---^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: return "${rc}" In xfrm_state.sh line 495: test_mtu_ipv6_s2() { ^-- SC2329 (info): This function is never invoked. Check usage (or ignored if invoked indirectly). In xfrm_state.sh line 496: setup ns_set_v6x namespaces network xfrm icmpv6_filter || return $ksft_skip ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: setup ns_set_v6x namespaces network xfrm icmpv6_filter || return "$ksft_skip" In xfrm_state.sh line 497: run_cmd ${ns_a} ping -W 5 -w 4 -c 1 fc00:5::2 ^-----^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: run_cmd "${ns_a}" ping -W 5 -w 4 -c 1 fc00:5::2 In xfrm_state.sh line 498: run_cmd ${ns_s2} ip -6 route replace fc00:5::/64 dev eth0 metric 256 mtu 1300 ^------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: run_cmd "${ns_s2}" ip -6 route replace fc00:5::/64 dev eth0 metric 256 mtu 1300 In xfrm_state.sh line 499: run_cmd ${ns_a} ping -M do -s 1350 -W 5 -w 4 -c 1 fc00:5::2 || true ^-----^ SC2086 (info): Double quote to prevent globbing and word splitting. ^-- SC1010 (warning): Use semicolon or linefeed before 'do' (or quote to make it literal). Did you mean: run_cmd "${ns_a}" ping -M do -s 1350 -W 5 -w 4 -c 1 fc00:5::2 || true In xfrm_state.sh line 502: return ${rc} ^---^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: return "${rc}" In xfrm_state.sh line 505: test_mtu_ipv6_r3() { ^-- SC2329 (info): This function is never invoked. Check usage (or ignored if invoked indirectly). In xfrm_state.sh line 506: setup ns_set_v6 namespaces network xfrm icmpv6_filter || return $ksft_skip ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: setup ns_set_v6 namespaces network xfrm icmpv6_filter || return "$ksft_skip" In xfrm_state.sh line 507: run_cmd ${ns_a} ping -W 5 -w 4 -c 1 fc00:6::2 ^-----^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: run_cmd "${ns_a}" ping -W 5 -w 4 -c 1 fc00:6::2 In xfrm_state.sh line 508: run_cmd ${ns_r3} ip -6 route replace fc00:6::/64 dev eth1 metric 256 mtu 1300 ^------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: run_cmd "${ns_r3}" ip -6 route replace fc00:6::/64 dev eth1 metric 256 mtu 1300 In xfrm_state.sh line 509: run_cmd ${ns_a} ping -M do -s 1300 -W 5 -w 4 -c 1 fc00:6::2 || true ^-----^ SC2086 (info): Double quote to prevent globbing and word splitting. ^-- SC1010 (warning): Use semicolon or linefeed before 'do' (or quote to make it literal). Did you mean: run_cmd "${ns_a}" ping -M do -s 1300 -W 5 -w 4 -c 1 fc00:6::2 || true In xfrm_state.sh line 512: return ${rc} ^---^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: return "${rc}" In xfrm_state.sh line 545: shift $(($OPTIND - 1)) ^-----^ SC2004 (style): $/${} is unnecessary on arithmetic variables. For more information: https://www.shellcheck.net/wiki/SC1010 -- Use semicolon or linefeed before ... https://www.shellcheck.net/wiki/SC1083 -- This { is literal. Check expressi... https://www.shellcheck.net/wiki/SC2034 -- ns_b appears unused. Verify use (...