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.UfX9DsQiXh and /tmp/tmp.9WWQMpy6Qi Tree base: 0373d5c387f2 ("bnxt_en: Fix XDP_TX path") Now at: 7dff5f20d467 ("seg6: fix route leak for encap routes") ====== Checking before the patch ====== Checking tools/testing/selftests/net/srv6_end_dt46_l3vpn_test.sh - 5faf93b63f2784afc179d0f26b55c1b3d86e4abdfcb7b3e0f801b3191cb8be76 In srv6_end_dt46_l3vpn_test.sh line 215: if [ ${rc} -eq ${expected} ]; 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 [ "${rc}" -eq "${expected}" ]; then In srv6_end_dt46_l3vpn_test.sh line 225: read a ^--^ SC2162 (info): read without -r will mangle backslashes. In srv6_end_dt46_l3vpn_test.sh line 234: printf "\nTests passed: %3d\n" ${nsuccess} ^---------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: printf "\nTests passed: %3d\n" "${nsuccess}" In srv6_end_dt46_l3vpn_test.sh line 235: printf "Tests failed: %3d\n" ${nfail} ^------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: printf "Tests failed: %3d\n" "${nfail}" In srv6_end_dt46_l3vpn_test.sh line 259: eval local nsname=\${rt_${id}} ^-- SC1083 (warning): This { is literal. Check expression (missing ;/\n?) or quote it. ^---^ 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: eval local nsname=\${rt_"${id}"} In srv6_end_dt46_l3vpn_test.sh line 261: ip link set veth-rt-${id} netns ${nsname} ^---^ SC2086 (info): Double quote to prevent globbing and word splitting. ^-------^ SC2154 (warning): nsname is referenced but not assigned (did you mean 'ns_name'?). ^-------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip link set veth-rt-"${id}" netns "${nsname}" In srv6_end_dt46_l3vpn_test.sh line 262: ip -netns ${nsname} link set veth-rt-${id} name veth0 ^-------^ 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 "${nsname}" link set veth-rt-"${id}" name veth0 In srv6_end_dt46_l3vpn_test.sh line 264: ip netns exec ${nsname} sysctl -wq net.ipv6.conf.all.accept_dad=0 ^-------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip netns exec "${nsname}" sysctl -wq net.ipv6.conf.all.accept_dad=0 In srv6_end_dt46_l3vpn_test.sh line 265: ip netns exec ${nsname} sysctl -wq net.ipv6.conf.default.accept_dad=0 ^-------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip netns exec "${nsname}" sysctl -wq net.ipv6.conf.default.accept_dad=0 In srv6_end_dt46_l3vpn_test.sh line 267: ip -netns ${nsname} addr add ${IPv6_RT_NETWORK}::${id}/64 dev veth0 nodad ^-------^ 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 "${nsname}" addr add ${IPv6_RT_NETWORK}::"${id}"/64 dev veth0 nodad In srv6_end_dt46_l3vpn_test.sh line 268: ip -netns ${nsname} link set veth0 up ^-------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip -netns "${nsname}" link set veth0 up In srv6_end_dt46_l3vpn_test.sh line 269: ip -netns ${nsname} link set lo up ^-------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip -netns "${nsname}" link set lo up In srv6_end_dt46_l3vpn_test.sh line 271: ip netns exec ${nsname} sysctl -wq net.ipv4.ip_forward=1 ^-------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip netns exec "${nsname}" sysctl -wq net.ipv4.ip_forward=1 In srv6_end_dt46_l3vpn_test.sh line 272: ip netns exec ${nsname} sysctl -wq net.ipv6.conf.all.forwarding=1 ^-------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip netns exec "${nsname}" sysctl -wq net.ipv6.conf.all.forwarding=1 In srv6_end_dt46_l3vpn_test.sh line 280: eval local hsname=\${hs_t${tid}_${hid}} ^-- SC1083 (warning): This { is literal. Check expression (missing ;/\n?) or quote it. ^----^ SC2086 (info): Double quote to prevent globbing and word splitting. ^----^ 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: eval local hsname=\${hs_t"${tid}"_"${hid}"} In srv6_end_dt46_l3vpn_test.sh line 281: eval local rtname=\${rt_${rid}} ^-- SC1083 (warning): This { is literal. Check expression (missing ;/\n?) or quote it. ^----^ 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: eval local rtname=\${rt_"${rid}"} In srv6_end_dt46_l3vpn_test.sh line 285: ip netns exec ${hsname} sysctl -wq net.ipv6.conf.all.accept_dad=0 ^-------^ SC2154 (warning): hsname is referenced but not assigned. ^-------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip netns exec "${hsname}" sysctl -wq net.ipv6.conf.all.accept_dad=0 In srv6_end_dt46_l3vpn_test.sh line 286: ip netns exec ${hsname} sysctl -wq net.ipv6.conf.default.accept_dad=0 ^-------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip netns exec "${hsname}" sysctl -wq net.ipv6.conf.default.accept_dad=0 In srv6_end_dt46_l3vpn_test.sh line 288: ip -netns ${hsname} link add veth0 type veth peer name ${rtveth} ^-------^ 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 "${hsname}" link add veth0 type veth peer name "${rtveth}" In srv6_end_dt46_l3vpn_test.sh line 289: ip -netns ${hsname} link set ${rtveth} netns ${rtname} ^-------^ SC2086 (info): Double quote to prevent globbing and word splitting. ^-------^ SC2086 (info): Double quote to prevent globbing and word splitting. ^-------^ SC2154 (warning): rtname is referenced but not assigned. ^-------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip -netns "${hsname}" link set "${rtveth}" netns "${rtname}" In srv6_end_dt46_l3vpn_test.sh line 290: ip -netns ${hsname} addr add ${IPv6_HS_NETWORK}::${hid}/64 dev veth0 nodad ^-------^ 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 "${hsname}" addr add ${IPv6_HS_NETWORK}::"${hid}"/64 dev veth0 nodad In srv6_end_dt46_l3vpn_test.sh line 291: ip -netns ${hsname} addr add ${IPv4_HS_NETWORK}.${hid}/24 dev veth0 ^-------^ 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 "${hsname}" addr add ${IPv4_HS_NETWORK}."${hid}"/24 dev veth0 In srv6_end_dt46_l3vpn_test.sh line 292: ip -netns ${hsname} link set veth0 up ^-------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip -netns "${hsname}" link set veth0 up In srv6_end_dt46_l3vpn_test.sh line 293: ip -netns ${hsname} link set lo up ^-------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip -netns "${hsname}" link set lo up In srv6_end_dt46_l3vpn_test.sh line 297: ip -netns ${rtname} link add vrf-${tid} type vrf table ${tid} ^-------^ 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: ip -netns "${rtname}" link add vrf-"${tid}" type vrf table "${tid}" In srv6_end_dt46_l3vpn_test.sh line 298: ip -netns ${rtname} link set vrf-${tid} up ^-------^ 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 "${rtname}" link set vrf-"${tid}" up In srv6_end_dt46_l3vpn_test.sh line 300: ip netns exec ${rtname} sysctl -wq net.ipv6.conf.all.accept_dad=0 ^-------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip netns exec "${rtname}" sysctl -wq net.ipv6.conf.all.accept_dad=0 In srv6_end_dt46_l3vpn_test.sh line 301: ip netns exec ${rtname} sysctl -wq net.ipv6.conf.default.accept_dad=0 ^-------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip netns exec "${rtname}" sysctl -wq net.ipv6.conf.default.accept_dad=0 In srv6_end_dt46_l3vpn_test.sh line 304: ip -netns ${rtname} link set ${rtveth} master vrf-${tid} ^-------^ 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: ip -netns "${rtname}" link set "${rtveth}" master vrf-"${tid}" In srv6_end_dt46_l3vpn_test.sh line 305: ip -netns ${rtname} addr add ${IPv6_HS_NETWORK}::254/64 dev ${rtveth} nodad ^-------^ 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 "${rtname}" addr add ${IPv6_HS_NETWORK}::254/64 dev "${rtveth}" nodad In srv6_end_dt46_l3vpn_test.sh line 306: ip -netns ${rtname} addr add ${IPv4_HS_NETWORK}.254/24 dev ${rtveth} ^-------^ 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 "${rtname}" addr add ${IPv4_HS_NETWORK}.254/24 dev "${rtveth}" In srv6_end_dt46_l3vpn_test.sh line 307: ip -netns ${rtname} link set ${rtveth} up ^-------^ 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 "${rtname}" link set "${rtveth}" up In srv6_end_dt46_l3vpn_test.sh line 309: ip netns exec ${rtname} sysctl -wq net.ipv6.conf.${rtveth}.proxy_ndp=1 ^-------^ 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 "${rtname}" sysctl -wq net.ipv6.conf."${rtveth}".proxy_ndp=1 In srv6_end_dt46_l3vpn_test.sh line 310: ip netns exec ${rtname} sysctl -wq net.ipv4.conf.${rtveth}.proxy_arp=1 ^-------^ 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 "${rtname}" sysctl -wq net.ipv4.conf."${rtveth}".proxy_arp=1 In srv6_end_dt46_l3vpn_test.sh line 312: ip netns exec ${rtname} sh -c "echo 1 > /proc/sys/net/vrf/strict_mode" ^-------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip netns exec "${rtname}" sh -c "echo 1 > /proc/sys/net/vrf/strict_mode" In srv6_end_dt46_l3vpn_test.sh line 323: eval local rtsrc_name=\${rt_${rtsrc}} ^-- SC1083 (warning): This { is literal. Check expression (missing ;/\n?) or quote it. ^------^ 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: eval local rtsrc_name=\${rt_"${rtsrc}"} In srv6_end_dt46_l3vpn_test.sh line 324: eval local rtdst_name=\${rt_${rtdst}} ^-- SC1083 (warning): This { is literal. Check expression (missing ;/\n?) or quote it. ^------^ 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: eval local rtdst_name=\${rt_"${rtdst}"} In srv6_end_dt46_l3vpn_test.sh line 328: ip -netns ${rtsrc_name} -6 neigh add proxy ${IPv6_HS_NETWORK}::${hsdst} dev ${rtveth} ^-----------^ SC2154 (warning): rtsrc_name is referenced but not assigned. ^-----------^ 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: ip -netns "${rtsrc_name}" -6 neigh add proxy ${IPv6_HS_NETWORK}::"${hsdst}" dev "${rtveth}" In srv6_end_dt46_l3vpn_test.sh line 332: ip -netns ${rtsrc_name} -6 route add ${IPv6_HS_NETWORK}::${hsdst}/128 vrf vrf-${tid} \ ^-----------^ 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: ip -netns "${rtsrc_name}" -6 route add ${IPv6_HS_NETWORK}::"${hsdst}"/128 vrf vrf-"${tid}" \ In srv6_end_dt46_l3vpn_test.sh line 333: encap seg6 mode encap segs ${vpn_sid} dev veth0 ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: encap seg6 mode encap segs "${vpn_sid}" dev veth0 In srv6_end_dt46_l3vpn_test.sh line 334: ip -netns ${rtsrc_name} -4 route add ${IPv4_HS_NETWORK}.${hsdst}/32 vrf vrf-${tid} \ ^-----------^ 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: ip -netns "${rtsrc_name}" -4 route add ${IPv4_HS_NETWORK}."${hsdst}"/32 vrf vrf-"${tid}" \ In srv6_end_dt46_l3vpn_test.sh line 335: encap seg6 mode encap segs ${vpn_sid} dev veth0 ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: encap seg6 mode encap segs "${vpn_sid}" dev veth0 In srv6_end_dt46_l3vpn_test.sh line 336: ip -netns ${rtsrc_name} -6 route add ${vpn_sid}/128 vrf vrf-${tid} \ ^-----------^ 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: ip -netns "${rtsrc_name}" -6 route add "${vpn_sid}"/128 vrf vrf-"${tid}" \ In srv6_end_dt46_l3vpn_test.sh line 337: via fd00::${rtdst} dev veth0 ^------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: via fd00::"${rtdst}" dev veth0 In srv6_end_dt46_l3vpn_test.sh line 341: ip -netns ${rtdst_name} -6 route add ${vpn_sid}/128 table ${LOCALSID_TABLE_ID} \ ^-----------^ SC2154 (warning): rtdst_name is referenced but not assigned (did you mean 'test_name'?). ^-----------^ 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 "${rtdst_name}" -6 route add "${vpn_sid}"/128 table ${LOCALSID_TABLE_ID} \ In srv6_end_dt46_l3vpn_test.sh line 342: encap seg6local action End.DT46 vrftable ${tid} dev vrf-${tid} ^----^ SC2086 (info): Double quote to prevent globbing and word splitting. ^----^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: encap seg6local action End.DT46 vrftable "${tid}" dev vrf-"${tid}" In srv6_end_dt46_l3vpn_test.sh line 349: if [ -z "$(ip -netns ${rtdst_name} -6 rule show | \ ^-- SC2143 (style): Use ! grep -q instead of comparing output with [ -z .. ]. ^-----------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: if [ -z "$(ip -netns "${rtdst_name}" -6 rule show | \ In srv6_end_dt46_l3vpn_test.sh line 351: ip -netns ${rtdst_name} -6 rule add \ ^-----------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip -netns "${rtdst_name}" -6 rule add \ In srv6_end_dt46_l3vpn_test.sh line 357: ip -netns ${rtsrc_name} -6 route add unreachable default metric 4278198272 \ ^-----------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip -netns "${rtsrc_name}" -6 route add unreachable default metric 4278198272 \ In srv6_end_dt46_l3vpn_test.sh line 358: vrf vrf-${tid} ^----^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: vrf vrf-"${tid}" In srv6_end_dt46_l3vpn_test.sh line 360: ip -netns ${rtsrc_name} -4 route add unreachable default metric 4278198272 \ ^-----------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip -netns "${rtsrc_name}" -4 route add unreachable default metric 4278198272 \ In srv6_end_dt46_l3vpn_test.sh line 361: vrf vrf-${tid} ^----^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: vrf vrf-"${tid}" In srv6_end_dt46_l3vpn_test.sh line 401: eval local nsname=\${rt_${rtsrc}} ^-- SC1083 (warning): This { is literal. Check expression (missing ;/\n?) or quote it. ^------^ 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: eval local nsname=\${rt_"${rtsrc}"} In srv6_end_dt46_l3vpn_test.sh line 403: ip netns exec ${nsname} ping -c 1 -W 1 ${IPv6_RT_NETWORK}::${rtdst} \ ^-------^ 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 "${nsname}" ping -c 1 -W 1 ${IPv6_RT_NETWORK}::"${rtdst}" \ In srv6_end_dt46_l3vpn_test.sh line 412: check_rt_connectivity ${rtsrc} ${rtdst} ^------^ SC2086 (info): Double quote to prevent globbing and word splitting. ^------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: check_rt_connectivity "${rtsrc}" "${rtdst}" In srv6_end_dt46_l3vpn_test.sh line 421: eval local nsname=\${hs_t${tid}_${hssrc}} ^-- SC1083 (warning): This { is literal. Check expression (missing ;/\n?) or quote it. ^----^ SC2086 (info): Double quote to prevent globbing and word splitting. ^------^ 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: eval local nsname=\${hs_t"${tid}"_"${hssrc}"} In srv6_end_dt46_l3vpn_test.sh line 423: ip netns exec ${nsname} ping -c 1 -W ${PING_TIMEOUT_SEC} \ ^-------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip netns exec "${nsname}" ping -c 1 -W ${PING_TIMEOUT_SEC} \ In srv6_end_dt46_l3vpn_test.sh line 424: ${IPv6_HS_NETWORK}::${hsdst} >/dev/null 2>&1 ^------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ${IPv6_HS_NETWORK}::"${hsdst}" >/dev/null 2>&1 In srv6_end_dt46_l3vpn_test.sh line 432: eval local nsname=\${hs_t${tid}_${hssrc}} ^-- SC1083 (warning): This { is literal. Check expression (missing ;/\n?) or quote it. ^----^ SC2086 (info): Double quote to prevent globbing and word splitting. ^------^ 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: eval local nsname=\${hs_t"${tid}"_"${hssrc}"} In srv6_end_dt46_l3vpn_test.sh line 434: ip netns exec ${nsname} ping -c 1 -W ${PING_TIMEOUT_SEC} \ ^-------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip netns exec "${nsname}" ping -c 1 -W ${PING_TIMEOUT_SEC} \ In srv6_end_dt46_l3vpn_test.sh line 435: ${IPv4_HS_NETWORK}.${hsdst} >/dev/null 2>&1 ^------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ${IPv4_HS_NETWORK}."${hsdst}" >/dev/null 2>&1 In srv6_end_dt46_l3vpn_test.sh line 444: check_hs_ipv6_connectivity ${hssrc} ${hsdst} ${tid} ^------^ 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: check_hs_ipv6_connectivity "${hssrc}" "${hsdst}" "${tid}" In srv6_end_dt46_l3vpn_test.sh line 447: check_hs_ipv4_connectivity ${hssrc} ${hsdst} ${tid} ^------^ 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: check_hs_ipv4_connectivity "${hssrc}" "${hsdst}" "${tid}" In srv6_end_dt46_l3vpn_test.sh line 459: check_hs_ipv6_connectivity ${hssrc} ${hsdst} ${tidsrc} ^------^ 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: check_hs_ipv6_connectivity "${hssrc}" "${hsdst}" "${tidsrc}" In srv6_end_dt46_l3vpn_test.sh line 463: check_hs_ipv4_connectivity ${hssrc} ${hsdst} ${tidsrc} ^------^ 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: check_hs_ipv4_connectivity "${hssrc}" "${hsdst}" "${tidsrc}" In srv6_end_dt46_l3vpn_test.sh line 475: check_hs_ipv6_connectivity ${hssrc} 254 ${tid} ^------^ SC2086 (info): Double quote to prevent globbing and word splitting. ^----^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: check_hs_ipv6_connectivity "${hssrc}" 254 "${tid}" In srv6_end_dt46_l3vpn_test.sh line 478: check_hs_ipv4_connectivity ${hssrc} 254 ${tid} ^------^ SC2086 (info): Double quote to prevent globbing and word splitting. ^----^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: check_hs_ipv4_connectivity "${hssrc}" 254 "${tid}" In srv6_end_dt46_l3vpn_test.sh line 526: for k in 0 1; do ^-^ SC2034 (warning): k appears unused. Verify use (or export if used externally). In srv6_end_dt46_l3vpn_test.sh line 529: check_and_log_hs_isolation ${i} ${t1} ${j} ${t2} ^--^ SC2086 (info): Double quote to prevent globbing and word splitting. ^--^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: check_and_log_hs_isolation "${i}" ${t1} "${j}" ${t2} For more information: https://www.shellcheck.net/wiki/SC1083 -- This { is literal. Check expressi... https://www.shellcheck.net/wiki/SC2034 -- k appears unused. Verify use (or ... https://www.shellcheck.net/wiki/SC2154 -- hsname is referenced but not assi... Checking tools/testing/selftests/net/srv6_end_dt4_l3vpn_test.sh - 6ee356d7f7db8b5f59b8875f55afe48b59f4ecb28275593232faadb47f37aa5b In srv6_end_dt4_l3vpn_test.sh line 184: if [ ${rc} -eq ${expected} ]; 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 [ "${rc}" -eq "${expected}" ]; then In srv6_end_dt4_l3vpn_test.sh line 194: read a ^--^ SC2162 (info): read without -r will mangle backslashes. In srv6_end_dt4_l3vpn_test.sh line 203: printf "\nTests passed: %3d\n" ${nsuccess} ^---------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: printf "\nTests passed: %3d\n" "${nsuccess}" In srv6_end_dt4_l3vpn_test.sh line 204: printf "Tests failed: %3d\n" ${nfail} ^------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: printf "Tests failed: %3d\n" "${nfail}" In srv6_end_dt4_l3vpn_test.sh line 228: eval local nsname=\${rt_${id}} ^-- SC1083 (warning): This { is literal. Check expression (missing ;/\n?) or quote it. ^---^ 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: eval local nsname=\${rt_"${id}"} In srv6_end_dt4_l3vpn_test.sh line 230: ip netns exec ${nsname} sysctl -wq net.ipv6.conf.all.accept_dad=0 ^-------^ SC2154 (warning): nsname is referenced but not assigned (did you mean 'ns_name'?). ^-------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip netns exec "${nsname}" sysctl -wq net.ipv6.conf.all.accept_dad=0 In srv6_end_dt4_l3vpn_test.sh line 231: ip netns exec ${nsname} sysctl -wq net.ipv6.conf.default.accept_dad=0 ^-------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip netns exec "${nsname}" sysctl -wq net.ipv6.conf.default.accept_dad=0 In srv6_end_dt4_l3vpn_test.sh line 233: ip link set veth-rt-${id} netns ${nsname} ^---^ SC2086 (info): Double quote to prevent globbing and word splitting. ^-------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip link set veth-rt-"${id}" netns "${nsname}" In srv6_end_dt4_l3vpn_test.sh line 234: ip -netns ${nsname} link set veth-rt-${id} name veth0 ^-------^ 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 "${nsname}" link set veth-rt-"${id}" name veth0 In srv6_end_dt4_l3vpn_test.sh line 236: ip -netns ${nsname} addr add ${IPv6_RT_NETWORK}::${id}/64 dev veth0 nodad ^-------^ 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 "${nsname}" addr add ${IPv6_RT_NETWORK}::"${id}"/64 dev veth0 nodad In srv6_end_dt4_l3vpn_test.sh line 237: ip -netns ${nsname} link set veth0 up ^-------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip -netns "${nsname}" link set veth0 up In srv6_end_dt4_l3vpn_test.sh line 238: ip -netns ${nsname} link set lo up ^-------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip -netns "${nsname}" link set lo up In srv6_end_dt4_l3vpn_test.sh line 240: ip netns exec ${nsname} sysctl -wq net.ipv4.ip_forward=1 ^-------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip netns exec "${nsname}" sysctl -wq net.ipv4.ip_forward=1 In srv6_end_dt4_l3vpn_test.sh line 241: ip netns exec ${nsname} sysctl -wq net.ipv6.conf.all.forwarding=1 ^-------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip netns exec "${nsname}" sysctl -wq net.ipv6.conf.all.forwarding=1 In srv6_end_dt4_l3vpn_test.sh line 249: eval local hsname=\${hs_t${tid}_${hid}} ^-- SC1083 (warning): This { is literal. Check expression (missing ;/\n?) or quote it. ^----^ SC2086 (info): Double quote to prevent globbing and word splitting. ^----^ 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: eval local hsname=\${hs_t"${tid}"_"${hid}"} In srv6_end_dt4_l3vpn_test.sh line 250: eval local rtname=\${rt_${rid}} ^-- SC1083 (warning): This { is literal. Check expression (missing ;/\n?) or quote it. ^----^ 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: eval local rtname=\${rt_"${rid}"} In srv6_end_dt4_l3vpn_test.sh line 253: ip -netns ${hsname} link add veth0 type veth peer name ${rtveth} ^-------^ SC2154 (warning): hsname is referenced but not assigned. ^-------^ 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 "${hsname}" link add veth0 type veth peer name "${rtveth}" In srv6_end_dt4_l3vpn_test.sh line 254: ip -netns ${hsname} link set ${rtveth} netns ${rtname} ^-------^ SC2086 (info): Double quote to prevent globbing and word splitting. ^-------^ SC2086 (info): Double quote to prevent globbing and word splitting. ^-------^ SC2154 (warning): rtname is referenced but not assigned. ^-------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip -netns "${hsname}" link set "${rtveth}" netns "${rtname}" In srv6_end_dt4_l3vpn_test.sh line 255: ip -netns ${hsname} addr add ${IPv4_HS_NETWORK}.${hid}/24 dev veth0 ^-------^ 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 "${hsname}" addr add ${IPv4_HS_NETWORK}."${hid}"/24 dev veth0 In srv6_end_dt4_l3vpn_test.sh line 256: ip -netns ${hsname} link set veth0 up ^-------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip -netns "${hsname}" link set veth0 up In srv6_end_dt4_l3vpn_test.sh line 257: ip -netns ${hsname} link set lo up ^-------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip -netns "${hsname}" link set lo up In srv6_end_dt4_l3vpn_test.sh line 261: ip -netns ${rtname} link add vrf-${tid} type vrf table ${tid} ^-------^ 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: ip -netns "${rtname}" link add vrf-"${tid}" type vrf table "${tid}" In srv6_end_dt4_l3vpn_test.sh line 262: ip -netns ${rtname} link set vrf-${tid} up ^-------^ 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 "${rtname}" link set vrf-"${tid}" up In srv6_end_dt4_l3vpn_test.sh line 265: ip -netns ${rtname} link set ${rtveth} master vrf-${tid} ^-------^ 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: ip -netns "${rtname}" link set "${rtveth}" master vrf-"${tid}" In srv6_end_dt4_l3vpn_test.sh line 266: ip -netns ${rtname} addr add ${IPv4_HS_NETWORK}.254/24 dev ${rtveth} ^-------^ 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 "${rtname}" addr add ${IPv4_HS_NETWORK}.254/24 dev "${rtveth}" In srv6_end_dt4_l3vpn_test.sh line 267: ip -netns ${rtname} link set ${rtveth} up ^-------^ 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 "${rtname}" link set "${rtveth}" up In srv6_end_dt4_l3vpn_test.sh line 269: ip netns exec ${rtname} sysctl -wq net.ipv4.conf.${rtveth}.proxy_arp=1 ^-------^ 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 "${rtname}" sysctl -wq net.ipv4.conf."${rtveth}".proxy_arp=1 In srv6_end_dt4_l3vpn_test.sh line 271: ip netns exec ${rtname} sh -c "echo 1 > /proc/sys/net/vrf/strict_mode" ^-------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip netns exec "${rtname}" sh -c "echo 1 > /proc/sys/net/vrf/strict_mode" In srv6_end_dt4_l3vpn_test.sh line 282: eval local rtsrc_name=\${rt_${rtsrc}} ^-- SC1083 (warning): This { is literal. Check expression (missing ;/\n?) or quote it. ^------^ 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: eval local rtsrc_name=\${rt_"${rtsrc}"} In srv6_end_dt4_l3vpn_test.sh line 283: eval local rtdst_name=\${rt_${rtdst}} ^-- SC1083 (warning): This { is literal. Check expression (missing ;/\n?) or quote it. ^------^ 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: eval local rtdst_name=\${rt_"${rtdst}"} In srv6_end_dt4_l3vpn_test.sh line 288: ip -netns ${rtsrc_name} -4 route add ${IPv4_HS_NETWORK}.${hsdst}/32 vrf vrf-${tid} \ ^-----------^ SC2154 (warning): rtsrc_name is referenced but not assigned. ^-----------^ 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: ip -netns "${rtsrc_name}" -4 route add ${IPv4_HS_NETWORK}."${hsdst}"/32 vrf vrf-"${tid}" \ In srv6_end_dt4_l3vpn_test.sh line 289: encap seg6 mode encap segs ${vpn_sid} dev veth0 ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: encap seg6 mode encap segs "${vpn_sid}" dev veth0 In srv6_end_dt4_l3vpn_test.sh line 290: ip -netns ${rtsrc_name} -6 route add ${vpn_sid}/128 vrf vrf-${tid} \ ^-----------^ 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: ip -netns "${rtsrc_name}" -6 route add "${vpn_sid}"/128 vrf vrf-"${tid}" \ In srv6_end_dt4_l3vpn_test.sh line 291: via fd00::${rtdst} dev veth0 ^------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: via fd00::"${rtdst}" dev veth0 In srv6_end_dt4_l3vpn_test.sh line 295: ip -netns ${rtdst_name} -6 route add ${vpn_sid}/128 table ${LOCALSID_TABLE_ID} \ ^-----------^ SC2154 (warning): rtdst_name is referenced but not assigned (did you mean 'test_name'?). ^-----------^ 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 "${rtdst_name}" -6 route add "${vpn_sid}"/128 table ${LOCALSID_TABLE_ID} \ In srv6_end_dt4_l3vpn_test.sh line 296: encap seg6local action End.DT4 vrftable ${tid} dev vrf-${tid} ^----^ SC2086 (info): Double quote to prevent globbing and word splitting. ^----^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: encap seg6local action End.DT4 vrftable "${tid}" dev vrf-"${tid}" In srv6_end_dt4_l3vpn_test.sh line 303: if [ -z "$(ip -netns ${rtdst_name} -6 rule show | \ ^-- SC2143 (style): Use ! grep -q instead of comparing output with [ -z .. ]. ^-----------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: if [ -z "$(ip -netns "${rtdst_name}" -6 rule show | \ In srv6_end_dt4_l3vpn_test.sh line 305: ip -netns ${rtdst_name} -6 rule add \ ^-----------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip -netns "${rtdst_name}" -6 rule add \ In srv6_end_dt4_l3vpn_test.sh line 348: eval local nsname=\${rt_${rtsrc}} ^-- SC1083 (warning): This { is literal. Check expression (missing ;/\n?) or quote it. ^------^ 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: eval local nsname=\${rt_"${rtsrc}"} In srv6_end_dt4_l3vpn_test.sh line 350: ip netns exec ${nsname} ping -c 1 -W 1 ${IPv6_RT_NETWORK}::${rtdst} \ ^-------^ 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 "${nsname}" ping -c 1 -W 1 ${IPv6_RT_NETWORK}::"${rtdst}" \ In srv6_end_dt4_l3vpn_test.sh line 359: check_rt_connectivity ${rtsrc} ${rtdst} ^------^ SC2086 (info): Double quote to prevent globbing and word splitting. ^------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: check_rt_connectivity "${rtsrc}" "${rtdst}" In srv6_end_dt4_l3vpn_test.sh line 368: eval local nsname=\${hs_t${tid}_${hssrc}} ^-- SC1083 (warning): This { is literal. Check expression (missing ;/\n?) or quote it. ^----^ SC2086 (info): Double quote to prevent globbing and word splitting. ^------^ 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: eval local nsname=\${hs_t"${tid}"_"${hssrc}"} In srv6_end_dt4_l3vpn_test.sh line 370: ip netns exec ${nsname} ping -c 1 -W ${PING_TIMEOUT_SEC} \ ^-------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip netns exec "${nsname}" ping -c 1 -W ${PING_TIMEOUT_SEC} \ In srv6_end_dt4_l3vpn_test.sh line 371: ${IPv4_HS_NETWORK}.${hsdst} >/dev/null 2>&1 ^------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ${IPv4_HS_NETWORK}."${hsdst}" >/dev/null 2>&1 In srv6_end_dt4_l3vpn_test.sh line 380: check_hs_connectivity ${hssrc} ${hsdst} ${tid} ^------^ 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: check_hs_connectivity "${hssrc}" "${hsdst}" "${tid}" In srv6_end_dt4_l3vpn_test.sh line 391: check_hs_connectivity ${hssrc} ${hsdst} ${tidsrc} ^------^ 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: check_hs_connectivity "${hssrc}" "${hsdst}" "${tidsrc}" In srv6_end_dt4_l3vpn_test.sh line 402: check_hs_connectivity ${hssrc} 254 ${tid} ^------^ SC2086 (info): Double quote to prevent globbing and word splitting. ^----^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: check_hs_connectivity "${hssrc}" 254 "${tid}" In srv6_end_dt4_l3vpn_test.sh line 449: for k in 0 1; do ^-^ SC2034 (warning): k appears unused. Verify use (or export if used externally). In srv6_end_dt4_l3vpn_test.sh line 452: check_and_log_hs_isolation ${i} ${t1} ${j} ${t2} ^--^ SC2086 (info): Double quote to prevent globbing and word splitting. ^--^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: check_and_log_hs_isolation "${i}" ${t1} "${j}" ${t2} For more information: https://www.shellcheck.net/wiki/SC1083 -- This { is literal. Check expressi... https://www.shellcheck.net/wiki/SC2034 -- k appears unused. Verify use (or ... https://www.shellcheck.net/wiki/SC2154 -- hsname is referenced but not assi... Checking tools/testing/selftests/net/srv6_end_dt6_l3vpn_test.sh - 085b20c381adcefcdebeb69e10c66195eab37a7b3d1cd55a72ed582b49429649 In srv6_end_dt6_l3vpn_test.sh line 185: if [ ${rc} -eq ${expected} ]; 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 [ "${rc}" -eq "${expected}" ]; then In srv6_end_dt6_l3vpn_test.sh line 195: read a ^--^ SC2162 (info): read without -r will mangle backslashes. In srv6_end_dt6_l3vpn_test.sh line 204: printf "\nTests passed: %3d\n" ${nsuccess} ^---------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: printf "\nTests passed: %3d\n" "${nsuccess}" In srv6_end_dt6_l3vpn_test.sh line 205: printf "Tests failed: %3d\n" ${nfail} ^------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: printf "Tests failed: %3d\n" "${nfail}" In srv6_end_dt6_l3vpn_test.sh line 229: eval local nsname=\${rt_${id}} ^-- SC1083 (warning): This { is literal. Check expression (missing ;/\n?) or quote it. ^---^ 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: eval local nsname=\${rt_"${id}"} In srv6_end_dt6_l3vpn_test.sh line 231: ip link set veth-rt-${id} netns ${nsname} ^---^ SC2086 (info): Double quote to prevent globbing and word splitting. ^-------^ SC2154 (warning): nsname is referenced but not assigned (did you mean 'ns_name'?). ^-------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip link set veth-rt-"${id}" netns "${nsname}" In srv6_end_dt6_l3vpn_test.sh line 232: ip -netns ${nsname} link set veth-rt-${id} name veth0 ^-------^ 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 "${nsname}" link set veth-rt-"${id}" name veth0 In srv6_end_dt6_l3vpn_test.sh line 234: ip netns exec ${nsname} sysctl -wq net.ipv6.conf.all.accept_dad=0 ^-------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip netns exec "${nsname}" sysctl -wq net.ipv6.conf.all.accept_dad=0 In srv6_end_dt6_l3vpn_test.sh line 235: ip netns exec ${nsname} sysctl -wq net.ipv6.conf.default.accept_dad=0 ^-------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip netns exec "${nsname}" sysctl -wq net.ipv6.conf.default.accept_dad=0 In srv6_end_dt6_l3vpn_test.sh line 237: ip -netns ${nsname} addr add ${IPv6_RT_NETWORK}::${id}/64 dev veth0 nodad ^-------^ 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 "${nsname}" addr add ${IPv6_RT_NETWORK}::"${id}"/64 dev veth0 nodad In srv6_end_dt6_l3vpn_test.sh line 238: ip -netns ${nsname} link set veth0 up ^-------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip -netns "${nsname}" link set veth0 up In srv6_end_dt6_l3vpn_test.sh line 239: ip -netns ${nsname} link set lo up ^-------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip -netns "${nsname}" link set lo up In srv6_end_dt6_l3vpn_test.sh line 241: ip netns exec ${nsname} sysctl -wq net.ipv6.conf.all.forwarding=1 ^-------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip netns exec "${nsname}" sysctl -wq net.ipv6.conf.all.forwarding=1 In srv6_end_dt6_l3vpn_test.sh line 249: eval local hsname=\${hs_t${tid}_${hid}} ^-- SC1083 (warning): This { is literal. Check expression (missing ;/\n?) or quote it. ^----^ SC2086 (info): Double quote to prevent globbing and word splitting. ^----^ 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: eval local hsname=\${hs_t"${tid}"_"${hid}"} In srv6_end_dt6_l3vpn_test.sh line 250: eval local rtname=\${rt_${rid}} ^-- SC1083 (warning): This { is literal. Check expression (missing ;/\n?) or quote it. ^----^ 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: eval local rtname=\${rt_"${rid}"} In srv6_end_dt6_l3vpn_test.sh line 254: ip netns exec ${hsname} sysctl -wq net.ipv6.conf.all.accept_dad=0 ^-------^ SC2154 (warning): hsname is referenced but not assigned. ^-------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip netns exec "${hsname}" sysctl -wq net.ipv6.conf.all.accept_dad=0 In srv6_end_dt6_l3vpn_test.sh line 255: ip netns exec ${hsname} sysctl -wq net.ipv6.conf.default.accept_dad=0 ^-------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip netns exec "${hsname}" sysctl -wq net.ipv6.conf.default.accept_dad=0 In srv6_end_dt6_l3vpn_test.sh line 257: ip -netns ${hsname} link add veth0 type veth peer name ${rtveth} ^-------^ 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 "${hsname}" link add veth0 type veth peer name "${rtveth}" In srv6_end_dt6_l3vpn_test.sh line 258: ip -netns ${hsname} link set ${rtveth} netns ${rtname} ^-------^ SC2086 (info): Double quote to prevent globbing and word splitting. ^-------^ SC2086 (info): Double quote to prevent globbing and word splitting. ^-------^ SC2154 (warning): rtname is referenced but not assigned. ^-------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip -netns "${hsname}" link set "${rtveth}" netns "${rtname}" In srv6_end_dt6_l3vpn_test.sh line 259: ip -netns ${hsname} addr add ${IPv6_HS_NETWORK}::${hid}/64 dev veth0 nodad ^-------^ 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 "${hsname}" addr add ${IPv6_HS_NETWORK}::"${hid}"/64 dev veth0 nodad In srv6_end_dt6_l3vpn_test.sh line 260: ip -netns ${hsname} link set veth0 up ^-------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip -netns "${hsname}" link set veth0 up In srv6_end_dt6_l3vpn_test.sh line 261: ip -netns ${hsname} link set lo up ^-------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip -netns "${hsname}" link set lo up In srv6_end_dt6_l3vpn_test.sh line 265: ip -netns ${rtname} link add vrf-${tid} type vrf table ${tid} ^-------^ 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: ip -netns "${rtname}" link add vrf-"${tid}" type vrf table "${tid}" In srv6_end_dt6_l3vpn_test.sh line 266: ip -netns ${rtname} link set vrf-${tid} up ^-------^ 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 "${rtname}" link set vrf-"${tid}" up In srv6_end_dt6_l3vpn_test.sh line 268: ip netns exec ${rtname} sysctl -wq net.ipv6.conf.all.accept_dad=0 ^-------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip netns exec "${rtname}" sysctl -wq net.ipv6.conf.all.accept_dad=0 In srv6_end_dt6_l3vpn_test.sh line 269: ip netns exec ${rtname} sysctl -wq net.ipv6.conf.default.accept_dad=0 ^-------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip netns exec "${rtname}" sysctl -wq net.ipv6.conf.default.accept_dad=0 In srv6_end_dt6_l3vpn_test.sh line 272: ip -netns ${rtname} link set ${rtveth} master vrf-${tid} ^-------^ 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: ip -netns "${rtname}" link set "${rtveth}" master vrf-"${tid}" In srv6_end_dt6_l3vpn_test.sh line 273: ip -netns ${rtname} addr add ${IPv6_HS_NETWORK}::254/64 dev ${rtveth} nodad ^-------^ 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 "${rtname}" addr add ${IPv6_HS_NETWORK}::254/64 dev "${rtveth}" nodad In srv6_end_dt6_l3vpn_test.sh line 274: ip -netns ${rtname} link set ${rtveth} up ^-------^ 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 "${rtname}" link set "${rtveth}" up In srv6_end_dt6_l3vpn_test.sh line 276: ip netns exec ${rtname} sysctl -wq net.ipv6.conf.${rtveth}.proxy_ndp=1 ^-------^ 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 "${rtname}" sysctl -wq net.ipv6.conf."${rtveth}".proxy_ndp=1 In srv6_end_dt6_l3vpn_test.sh line 278: ip netns exec ${rtname} sh -c "echo 1 > /proc/sys/net/vrf/strict_mode" ^-------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip netns exec "${rtname}" sh -c "echo 1 > /proc/sys/net/vrf/strict_mode" In srv6_end_dt6_l3vpn_test.sh line 289: eval local rtsrc_name=\${rt_${rtsrc}} ^-- SC1083 (warning): This { is literal. Check expression (missing ;/\n?) or quote it. ^------^ 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: eval local rtsrc_name=\${rt_"${rtsrc}"} In srv6_end_dt6_l3vpn_test.sh line 290: eval local rtdst_name=\${rt_${rtdst}} ^-- SC1083 (warning): This { is literal. Check expression (missing ;/\n?) or quote it. ^------^ 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: eval local rtdst_name=\${rt_"${rtdst}"} In srv6_end_dt6_l3vpn_test.sh line 294: ip -netns ${rtsrc_name} -6 neigh add proxy ${IPv6_HS_NETWORK}::${hsdst} dev ${rtveth} ^-----------^ SC2154 (warning): rtsrc_name is referenced but not assigned. ^-----------^ 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: ip -netns "${rtsrc_name}" -6 neigh add proxy ${IPv6_HS_NETWORK}::"${hsdst}" dev "${rtveth}" In srv6_end_dt6_l3vpn_test.sh line 298: ip -netns ${rtsrc_name} -6 route add ${IPv6_HS_NETWORK}::${hsdst}/128 vrf vrf-${tid} \ ^-----------^ 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: ip -netns "${rtsrc_name}" -6 route add ${IPv6_HS_NETWORK}::"${hsdst}"/128 vrf vrf-"${tid}" \ In srv6_end_dt6_l3vpn_test.sh line 299: encap seg6 mode encap segs ${vpn_sid} dev veth0 ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: encap seg6 mode encap segs "${vpn_sid}" dev veth0 In srv6_end_dt6_l3vpn_test.sh line 300: ip -netns ${rtsrc_name} -6 route add ${vpn_sid}/128 vrf vrf-${tid} \ ^-----------^ 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: ip -netns "${rtsrc_name}" -6 route add "${vpn_sid}"/128 vrf vrf-"${tid}" \ In srv6_end_dt6_l3vpn_test.sh line 301: via fd00::${rtdst} dev veth0 ^------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: via fd00::"${rtdst}" dev veth0 In srv6_end_dt6_l3vpn_test.sh line 305: ip -netns ${rtdst_name} -6 route add ${vpn_sid}/128 table ${LOCALSID_TABLE_ID} \ ^-----------^ SC2154 (warning): rtdst_name is referenced but not assigned (did you mean 'test_name'?). ^-----------^ 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 "${rtdst_name}" -6 route add "${vpn_sid}"/128 table ${LOCALSID_TABLE_ID} \ In srv6_end_dt6_l3vpn_test.sh line 306: encap seg6local action End.DT6 vrftable ${tid} dev vrf-${tid} ^----^ SC2086 (info): Double quote to prevent globbing and word splitting. ^----^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: encap seg6local action End.DT6 vrftable "${tid}" dev vrf-"${tid}" In srv6_end_dt6_l3vpn_test.sh line 313: if [ -z "$(ip -netns ${rtdst_name} -6 rule show | \ ^-- SC2143 (style): Use ! grep -q instead of comparing output with [ -z .. ]. ^-----------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: if [ -z "$(ip -netns "${rtdst_name}" -6 rule show | \ In srv6_end_dt6_l3vpn_test.sh line 315: ip -netns ${rtdst_name} -6 rule add \ ^-----------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip -netns "${rtdst_name}" -6 rule add \ In srv6_end_dt6_l3vpn_test.sh line 358: eval local nsname=\${rt_${rtsrc}} ^-- SC1083 (warning): This { is literal. Check expression (missing ;/\n?) or quote it. ^------^ 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: eval local nsname=\${rt_"${rtsrc}"} In srv6_end_dt6_l3vpn_test.sh line 360: ip netns exec ${nsname} ping -c 1 -W 1 ${IPv6_RT_NETWORK}::${rtdst} \ ^-------^ 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 "${nsname}" ping -c 1 -W 1 ${IPv6_RT_NETWORK}::"${rtdst}" \ In srv6_end_dt6_l3vpn_test.sh line 369: check_rt_connectivity ${rtsrc} ${rtdst} ^------^ SC2086 (info): Double quote to prevent globbing and word splitting. ^------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: check_rt_connectivity "${rtsrc}" "${rtdst}" In srv6_end_dt6_l3vpn_test.sh line 378: eval local nsname=\${hs_t${tid}_${hssrc}} ^-- SC1083 (warning): This { is literal. Check expression (missing ;/\n?) or quote it. ^----^ SC2086 (info): Double quote to prevent globbing and word splitting. ^------^ 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: eval local nsname=\${hs_t"${tid}"_"${hssrc}"} In srv6_end_dt6_l3vpn_test.sh line 380: ip netns exec ${nsname} ping -c 1 -W ${PING_TIMEOUT_SEC} \ ^-------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip netns exec "${nsname}" ping -c 1 -W ${PING_TIMEOUT_SEC} \ In srv6_end_dt6_l3vpn_test.sh line 381: ${IPv6_HS_NETWORK}::${hsdst} >/dev/null 2>&1 ^------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ${IPv6_HS_NETWORK}::"${hsdst}" >/dev/null 2>&1 In srv6_end_dt6_l3vpn_test.sh line 390: check_hs_connectivity ${hssrc} ${hsdst} ${tid} ^------^ 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: check_hs_connectivity "${hssrc}" "${hsdst}" "${tid}" In srv6_end_dt6_l3vpn_test.sh line 401: check_hs_connectivity ${hssrc} ${hsdst} ${tidsrc} ^------^ 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: check_hs_connectivity "${hssrc}" "${hsdst}" "${tidsrc}" In srv6_end_dt6_l3vpn_test.sh line 412: check_hs_connectivity ${hssrc} 254 ${tid} ^------^ SC2086 (info): Double quote to prevent globbing and word splitting. ^----^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: check_hs_connectivity "${hssrc}" 254 "${tid}" In srv6_end_dt6_l3vpn_test.sh line 459: for k in 0 1; do ^-^ SC2034 (warning): k appears unused. Verify use (or export if used externally). In srv6_end_dt6_l3vpn_test.sh line 462: check_and_log_hs_isolation ${i} ${t1} ${j} ${t2} ^--^ SC2086 (info): Double quote to prevent globbing and word splitting. ^--^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: check_and_log_hs_isolation "${i}" ${t1} "${j}" ${t2} For more information: https://www.shellcheck.net/wiki/SC1083 -- This { is literal. Check expressi... https://www.shellcheck.net/wiki/SC2034 -- k appears unused. Verify use (or ... https://www.shellcheck.net/wiki/SC2154 -- hsname is referenced but not assi... ====== Checking the tree with the patch ====== Checking tools/testing/selftests/net/srv6_end_dt46_l3vpn_test.sh - 5faf93b63f2784afc179d0f26b55c1b3d86e4abdfcb7b3e0f801b3191cb8be76 In srv6_end_dt46_l3vpn_test.sh line 215: if [ ${rc} -eq ${expected} ]; 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 [ "${rc}" -eq "${expected}" ]; then In srv6_end_dt46_l3vpn_test.sh line 225: read a ^--^ SC2162 (info): read without -r will mangle backslashes. In srv6_end_dt46_l3vpn_test.sh line 234: printf "\nTests passed: %3d\n" ${nsuccess} ^---------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: printf "\nTests passed: %3d\n" "${nsuccess}" In srv6_end_dt46_l3vpn_test.sh line 235: printf "Tests failed: %3d\n" ${nfail} ^------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: printf "Tests failed: %3d\n" "${nfail}" In srv6_end_dt46_l3vpn_test.sh line 259: eval local nsname=\${rt_${id}} ^-- SC1083 (warning): This { is literal. Check expression (missing ;/\n?) or quote it. ^---^ 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: eval local nsname=\${rt_"${id}"} In srv6_end_dt46_l3vpn_test.sh line 261: ip link set veth-rt-${id} netns ${nsname} ^---^ SC2086 (info): Double quote to prevent globbing and word splitting. ^-------^ SC2154 (warning): nsname is referenced but not assigned (did you mean 'ns_name'?). ^-------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip link set veth-rt-"${id}" netns "${nsname}" In srv6_end_dt46_l3vpn_test.sh line 262: ip -netns ${nsname} link set veth-rt-${id} name veth0 ^-------^ 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 "${nsname}" link set veth-rt-"${id}" name veth0 In srv6_end_dt46_l3vpn_test.sh line 264: ip netns exec ${nsname} sysctl -wq net.ipv6.conf.all.accept_dad=0 ^-------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip netns exec "${nsname}" sysctl -wq net.ipv6.conf.all.accept_dad=0 In srv6_end_dt46_l3vpn_test.sh line 265: ip netns exec ${nsname} sysctl -wq net.ipv6.conf.default.accept_dad=0 ^-------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip netns exec "${nsname}" sysctl -wq net.ipv6.conf.default.accept_dad=0 In srv6_end_dt46_l3vpn_test.sh line 267: ip -netns ${nsname} addr add ${IPv6_RT_NETWORK}::${id}/64 dev veth0 nodad ^-------^ 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 "${nsname}" addr add ${IPv6_RT_NETWORK}::"${id}"/64 dev veth0 nodad In srv6_end_dt46_l3vpn_test.sh line 268: ip -netns ${nsname} link set veth0 up ^-------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip -netns "${nsname}" link set veth0 up In srv6_end_dt46_l3vpn_test.sh line 269: ip -netns ${nsname} link set lo up ^-------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip -netns "${nsname}" link set lo up In srv6_end_dt46_l3vpn_test.sh line 271: ip netns exec ${nsname} sysctl -wq net.ipv4.ip_forward=1 ^-------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip netns exec "${nsname}" sysctl -wq net.ipv4.ip_forward=1 In srv6_end_dt46_l3vpn_test.sh line 272: ip netns exec ${nsname} sysctl -wq net.ipv6.conf.all.forwarding=1 ^-------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip netns exec "${nsname}" sysctl -wq net.ipv6.conf.all.forwarding=1 In srv6_end_dt46_l3vpn_test.sh line 280: eval local hsname=\${hs_t${tid}_${hid}} ^-- SC1083 (warning): This { is literal. Check expression (missing ;/\n?) or quote it. ^----^ SC2086 (info): Double quote to prevent globbing and word splitting. ^----^ 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: eval local hsname=\${hs_t"${tid}"_"${hid}"} In srv6_end_dt46_l3vpn_test.sh line 281: eval local rtname=\${rt_${rid}} ^-- SC1083 (warning): This { is literal. Check expression (missing ;/\n?) or quote it. ^----^ 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: eval local rtname=\${rt_"${rid}"} In srv6_end_dt46_l3vpn_test.sh line 285: ip netns exec ${hsname} sysctl -wq net.ipv6.conf.all.accept_dad=0 ^-------^ SC2154 (warning): hsname is referenced but not assigned. ^-------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip netns exec "${hsname}" sysctl -wq net.ipv6.conf.all.accept_dad=0 In srv6_end_dt46_l3vpn_test.sh line 286: ip netns exec ${hsname} sysctl -wq net.ipv6.conf.default.accept_dad=0 ^-------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip netns exec "${hsname}" sysctl -wq net.ipv6.conf.default.accept_dad=0 In srv6_end_dt46_l3vpn_test.sh line 288: ip -netns ${hsname} link add veth0 type veth peer name ${rtveth} ^-------^ 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 "${hsname}" link add veth0 type veth peer name "${rtveth}" In srv6_end_dt46_l3vpn_test.sh line 289: ip -netns ${hsname} link set ${rtveth} netns ${rtname} ^-------^ SC2086 (info): Double quote to prevent globbing and word splitting. ^-------^ SC2086 (info): Double quote to prevent globbing and word splitting. ^-------^ SC2154 (warning): rtname is referenced but not assigned. ^-------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip -netns "${hsname}" link set "${rtveth}" netns "${rtname}" In srv6_end_dt46_l3vpn_test.sh line 290: ip -netns ${hsname} addr add ${IPv6_HS_NETWORK}::${hid}/64 dev veth0 nodad ^-------^ 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 "${hsname}" addr add ${IPv6_HS_NETWORK}::"${hid}"/64 dev veth0 nodad In srv6_end_dt46_l3vpn_test.sh line 291: ip -netns ${hsname} addr add ${IPv4_HS_NETWORK}.${hid}/24 dev veth0 ^-------^ 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 "${hsname}" addr add ${IPv4_HS_NETWORK}."${hid}"/24 dev veth0 In srv6_end_dt46_l3vpn_test.sh line 292: ip -netns ${hsname} link set veth0 up ^-------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip -netns "${hsname}" link set veth0 up In srv6_end_dt46_l3vpn_test.sh line 293: ip -netns ${hsname} link set lo up ^-------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip -netns "${hsname}" link set lo up In srv6_end_dt46_l3vpn_test.sh line 297: ip -netns ${rtname} link add vrf-${tid} type vrf table ${tid} ^-------^ 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: ip -netns "${rtname}" link add vrf-"${tid}" type vrf table "${tid}" In srv6_end_dt46_l3vpn_test.sh line 298: ip -netns ${rtname} link set vrf-${tid} up ^-------^ 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 "${rtname}" link set vrf-"${tid}" up In srv6_end_dt46_l3vpn_test.sh line 300: ip netns exec ${rtname} sysctl -wq net.ipv6.conf.all.accept_dad=0 ^-------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip netns exec "${rtname}" sysctl -wq net.ipv6.conf.all.accept_dad=0 In srv6_end_dt46_l3vpn_test.sh line 301: ip netns exec ${rtname} sysctl -wq net.ipv6.conf.default.accept_dad=0 ^-------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip netns exec "${rtname}" sysctl -wq net.ipv6.conf.default.accept_dad=0 In srv6_end_dt46_l3vpn_test.sh line 304: ip -netns ${rtname} link set ${rtveth} master vrf-${tid} ^-------^ 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: ip -netns "${rtname}" link set "${rtveth}" master vrf-"${tid}" In srv6_end_dt46_l3vpn_test.sh line 305: ip -netns ${rtname} addr add ${IPv6_HS_NETWORK}::254/64 dev ${rtveth} nodad ^-------^ 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 "${rtname}" addr add ${IPv6_HS_NETWORK}::254/64 dev "${rtveth}" nodad In srv6_end_dt46_l3vpn_test.sh line 306: ip -netns ${rtname} addr add ${IPv4_HS_NETWORK}.254/24 dev ${rtveth} ^-------^ 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 "${rtname}" addr add ${IPv4_HS_NETWORK}.254/24 dev "${rtveth}" In srv6_end_dt46_l3vpn_test.sh line 307: ip -netns ${rtname} link set ${rtveth} up ^-------^ 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 "${rtname}" link set "${rtveth}" up In srv6_end_dt46_l3vpn_test.sh line 309: ip netns exec ${rtname} sysctl -wq net.ipv6.conf.${rtveth}.proxy_ndp=1 ^-------^ 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 "${rtname}" sysctl -wq net.ipv6.conf."${rtveth}".proxy_ndp=1 In srv6_end_dt46_l3vpn_test.sh line 310: ip netns exec ${rtname} sysctl -wq net.ipv4.conf.${rtveth}.proxy_arp=1 ^-------^ 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 "${rtname}" sysctl -wq net.ipv4.conf."${rtveth}".proxy_arp=1 In srv6_end_dt46_l3vpn_test.sh line 312: ip netns exec ${rtname} sh -c "echo 1 > /proc/sys/net/vrf/strict_mode" ^-------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip netns exec "${rtname}" sh -c "echo 1 > /proc/sys/net/vrf/strict_mode" In srv6_end_dt46_l3vpn_test.sh line 323: eval local rtsrc_name=\${rt_${rtsrc}} ^-- SC1083 (warning): This { is literal. Check expression (missing ;/\n?) or quote it. ^------^ 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: eval local rtsrc_name=\${rt_"${rtsrc}"} In srv6_end_dt46_l3vpn_test.sh line 324: eval local rtdst_name=\${rt_${rtdst}} ^-- SC1083 (warning): This { is literal. Check expression (missing ;/\n?) or quote it. ^------^ 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: eval local rtdst_name=\${rt_"${rtdst}"} In srv6_end_dt46_l3vpn_test.sh line 328: ip -netns ${rtsrc_name} -6 neigh add proxy ${IPv6_HS_NETWORK}::${hsdst} dev ${rtveth} ^-----------^ SC2154 (warning): rtsrc_name is referenced but not assigned. ^-----------^ 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: ip -netns "${rtsrc_name}" -6 neigh add proxy ${IPv6_HS_NETWORK}::"${hsdst}" dev "${rtveth}" In srv6_end_dt46_l3vpn_test.sh line 332: ip -netns ${rtsrc_name} -6 route add ${IPv6_HS_NETWORK}::${hsdst}/128 vrf vrf-${tid} \ ^-----------^ 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: ip -netns "${rtsrc_name}" -6 route add ${IPv6_HS_NETWORK}::"${hsdst}"/128 vrf vrf-"${tid}" \ In srv6_end_dt46_l3vpn_test.sh line 333: encap seg6 mode encap segs ${vpn_sid} dev veth0 ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: encap seg6 mode encap segs "${vpn_sid}" dev veth0 In srv6_end_dt46_l3vpn_test.sh line 334: ip -netns ${rtsrc_name} -4 route add ${IPv4_HS_NETWORK}.${hsdst}/32 vrf vrf-${tid} \ ^-----------^ 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: ip -netns "${rtsrc_name}" -4 route add ${IPv4_HS_NETWORK}."${hsdst}"/32 vrf vrf-"${tid}" \ In srv6_end_dt46_l3vpn_test.sh line 335: encap seg6 mode encap segs ${vpn_sid} dev veth0 ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: encap seg6 mode encap segs "${vpn_sid}" dev veth0 In srv6_end_dt46_l3vpn_test.sh line 336: ip -netns ${rtsrc_name} -6 route add ${vpn_sid}/128 \ ^-----------^ 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 "${rtsrc_name}" -6 route add "${vpn_sid}"/128 \ In srv6_end_dt46_l3vpn_test.sh line 337: via fd00::${rtdst} dev veth0 ^------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: via fd00::"${rtdst}" dev veth0 In srv6_end_dt46_l3vpn_test.sh line 341: ip -netns ${rtdst_name} -6 route add ${vpn_sid}/128 table ${LOCALSID_TABLE_ID} \ ^-----------^ SC2154 (warning): rtdst_name is referenced but not assigned (did you mean 'test_name'?). ^-----------^ 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 "${rtdst_name}" -6 route add "${vpn_sid}"/128 table ${LOCALSID_TABLE_ID} \ In srv6_end_dt46_l3vpn_test.sh line 342: encap seg6local action End.DT46 vrftable ${tid} dev vrf-${tid} ^----^ SC2086 (info): Double quote to prevent globbing and word splitting. ^----^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: encap seg6local action End.DT46 vrftable "${tid}" dev vrf-"${tid}" In srv6_end_dt46_l3vpn_test.sh line 349: if [ -z "$(ip -netns ${rtdst_name} -6 rule show | \ ^-- SC2143 (style): Use ! grep -q instead of comparing output with [ -z .. ]. ^-----------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: if [ -z "$(ip -netns "${rtdst_name}" -6 rule show | \ In srv6_end_dt46_l3vpn_test.sh line 351: ip -netns ${rtdst_name} -6 rule add \ ^-----------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip -netns "${rtdst_name}" -6 rule add \ In srv6_end_dt46_l3vpn_test.sh line 357: ip -netns ${rtsrc_name} -6 route add unreachable default metric 4278198272 \ ^-----------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip -netns "${rtsrc_name}" -6 route add unreachable default metric 4278198272 \ In srv6_end_dt46_l3vpn_test.sh line 358: vrf vrf-${tid} ^----^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: vrf vrf-"${tid}" In srv6_end_dt46_l3vpn_test.sh line 360: ip -netns ${rtsrc_name} -4 route add unreachable default metric 4278198272 \ ^-----------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip -netns "${rtsrc_name}" -4 route add unreachable default metric 4278198272 \ In srv6_end_dt46_l3vpn_test.sh line 361: vrf vrf-${tid} ^----^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: vrf vrf-"${tid}" In srv6_end_dt46_l3vpn_test.sh line 401: eval local nsname=\${rt_${rtsrc}} ^-- SC1083 (warning): This { is literal. Check expression (missing ;/\n?) or quote it. ^------^ 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: eval local nsname=\${rt_"${rtsrc}"} In srv6_end_dt46_l3vpn_test.sh line 403: ip netns exec ${nsname} ping -c 1 -W 1 ${IPv6_RT_NETWORK}::${rtdst} \ ^-------^ 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 "${nsname}" ping -c 1 -W 1 ${IPv6_RT_NETWORK}::"${rtdst}" \ In srv6_end_dt46_l3vpn_test.sh line 412: check_rt_connectivity ${rtsrc} ${rtdst} ^------^ SC2086 (info): Double quote to prevent globbing and word splitting. ^------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: check_rt_connectivity "${rtsrc}" "${rtdst}" In srv6_end_dt46_l3vpn_test.sh line 421: eval local nsname=\${hs_t${tid}_${hssrc}} ^-- SC1083 (warning): This { is literal. Check expression (missing ;/\n?) or quote it. ^----^ SC2086 (info): Double quote to prevent globbing and word splitting. ^------^ 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: eval local nsname=\${hs_t"${tid}"_"${hssrc}"} In srv6_end_dt46_l3vpn_test.sh line 423: ip netns exec ${nsname} ping -c 1 -W ${PING_TIMEOUT_SEC} \ ^-------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip netns exec "${nsname}" ping -c 1 -W ${PING_TIMEOUT_SEC} \ In srv6_end_dt46_l3vpn_test.sh line 424: ${IPv6_HS_NETWORK}::${hsdst} >/dev/null 2>&1 ^------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ${IPv6_HS_NETWORK}::"${hsdst}" >/dev/null 2>&1 In srv6_end_dt46_l3vpn_test.sh line 432: eval local nsname=\${hs_t${tid}_${hssrc}} ^-- SC1083 (warning): This { is literal. Check expression (missing ;/\n?) or quote it. ^----^ SC2086 (info): Double quote to prevent globbing and word splitting. ^------^ 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: eval local nsname=\${hs_t"${tid}"_"${hssrc}"} In srv6_end_dt46_l3vpn_test.sh line 434: ip netns exec ${nsname} ping -c 1 -W ${PING_TIMEOUT_SEC} \ ^-------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip netns exec "${nsname}" ping -c 1 -W ${PING_TIMEOUT_SEC} \ In srv6_end_dt46_l3vpn_test.sh line 435: ${IPv4_HS_NETWORK}.${hsdst} >/dev/null 2>&1 ^------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ${IPv4_HS_NETWORK}."${hsdst}" >/dev/null 2>&1 In srv6_end_dt46_l3vpn_test.sh line 444: check_hs_ipv6_connectivity ${hssrc} ${hsdst} ${tid} ^------^ 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: check_hs_ipv6_connectivity "${hssrc}" "${hsdst}" "${tid}" In srv6_end_dt46_l3vpn_test.sh line 447: check_hs_ipv4_connectivity ${hssrc} ${hsdst} ${tid} ^------^ 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: check_hs_ipv4_connectivity "${hssrc}" "${hsdst}" "${tid}" In srv6_end_dt46_l3vpn_test.sh line 459: check_hs_ipv6_connectivity ${hssrc} ${hsdst} ${tidsrc} ^------^ 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: check_hs_ipv6_connectivity "${hssrc}" "${hsdst}" "${tidsrc}" In srv6_end_dt46_l3vpn_test.sh line 463: check_hs_ipv4_connectivity ${hssrc} ${hsdst} ${tidsrc} ^------^ 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: check_hs_ipv4_connectivity "${hssrc}" "${hsdst}" "${tidsrc}" In srv6_end_dt46_l3vpn_test.sh line 475: check_hs_ipv6_connectivity ${hssrc} 254 ${tid} ^------^ SC2086 (info): Double quote to prevent globbing and word splitting. ^----^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: check_hs_ipv6_connectivity "${hssrc}" 254 "${tid}" In srv6_end_dt46_l3vpn_test.sh line 478: check_hs_ipv4_connectivity ${hssrc} 254 ${tid} ^------^ SC2086 (info): Double quote to prevent globbing and word splitting. ^----^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: check_hs_ipv4_connectivity "${hssrc}" 254 "${tid}" In srv6_end_dt46_l3vpn_test.sh line 526: for k in 0 1; do ^-^ SC2034 (warning): k appears unused. Verify use (or export if used externally). In srv6_end_dt46_l3vpn_test.sh line 529: check_and_log_hs_isolation ${i} ${t1} ${j} ${t2} ^--^ SC2086 (info): Double quote to prevent globbing and word splitting. ^--^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: check_and_log_hs_isolation "${i}" ${t1} "${j}" ${t2} For more information: https://www.shellcheck.net/wiki/SC1083 -- This { is literal. Check expressi... https://www.shellcheck.net/wiki/SC2034 -- k appears unused. Verify use (or ... https://www.shellcheck.net/wiki/SC2154 -- hsname is referenced but not assi... Checking tools/testing/selftests/net/srv6_end_dt4_l3vpn_test.sh - 6ee356d7f7db8b5f59b8875f55afe48b59f4ecb28275593232faadb47f37aa5b In srv6_end_dt4_l3vpn_test.sh line 184: if [ ${rc} -eq ${expected} ]; 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 [ "${rc}" -eq "${expected}" ]; then In srv6_end_dt4_l3vpn_test.sh line 194: read a ^--^ SC2162 (info): read without -r will mangle backslashes. In srv6_end_dt4_l3vpn_test.sh line 203: printf "\nTests passed: %3d\n" ${nsuccess} ^---------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: printf "\nTests passed: %3d\n" "${nsuccess}" In srv6_end_dt4_l3vpn_test.sh line 204: printf "Tests failed: %3d\n" ${nfail} ^------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: printf "Tests failed: %3d\n" "${nfail}" In srv6_end_dt4_l3vpn_test.sh line 228: eval local nsname=\${rt_${id}} ^-- SC1083 (warning): This { is literal. Check expression (missing ;/\n?) or quote it. ^---^ 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: eval local nsname=\${rt_"${id}"} In srv6_end_dt4_l3vpn_test.sh line 230: ip netns exec ${nsname} sysctl -wq net.ipv6.conf.all.accept_dad=0 ^-------^ SC2154 (warning): nsname is referenced but not assigned (did you mean 'ns_name'?). ^-------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip netns exec "${nsname}" sysctl -wq net.ipv6.conf.all.accept_dad=0 In srv6_end_dt4_l3vpn_test.sh line 231: ip netns exec ${nsname} sysctl -wq net.ipv6.conf.default.accept_dad=0 ^-------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip netns exec "${nsname}" sysctl -wq net.ipv6.conf.default.accept_dad=0 In srv6_end_dt4_l3vpn_test.sh line 233: ip link set veth-rt-${id} netns ${nsname} ^---^ SC2086 (info): Double quote to prevent globbing and word splitting. ^-------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip link set veth-rt-"${id}" netns "${nsname}" In srv6_end_dt4_l3vpn_test.sh line 234: ip -netns ${nsname} link set veth-rt-${id} name veth0 ^-------^ 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 "${nsname}" link set veth-rt-"${id}" name veth0 In srv6_end_dt4_l3vpn_test.sh line 236: ip -netns ${nsname} addr add ${IPv6_RT_NETWORK}::${id}/64 dev veth0 nodad ^-------^ 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 "${nsname}" addr add ${IPv6_RT_NETWORK}::"${id}"/64 dev veth0 nodad In srv6_end_dt4_l3vpn_test.sh line 237: ip -netns ${nsname} link set veth0 up ^-------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip -netns "${nsname}" link set veth0 up In srv6_end_dt4_l3vpn_test.sh line 238: ip -netns ${nsname} link set lo up ^-------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip -netns "${nsname}" link set lo up In srv6_end_dt4_l3vpn_test.sh line 240: ip netns exec ${nsname} sysctl -wq net.ipv4.ip_forward=1 ^-------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip netns exec "${nsname}" sysctl -wq net.ipv4.ip_forward=1 In srv6_end_dt4_l3vpn_test.sh line 241: ip netns exec ${nsname} sysctl -wq net.ipv6.conf.all.forwarding=1 ^-------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip netns exec "${nsname}" sysctl -wq net.ipv6.conf.all.forwarding=1 In srv6_end_dt4_l3vpn_test.sh line 249: eval local hsname=\${hs_t${tid}_${hid}} ^-- SC1083 (warning): This { is literal. Check expression (missing ;/\n?) or quote it. ^----^ SC2086 (info): Double quote to prevent globbing and word splitting. ^----^ 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: eval local hsname=\${hs_t"${tid}"_"${hid}"} In srv6_end_dt4_l3vpn_test.sh line 250: eval local rtname=\${rt_${rid}} ^-- SC1083 (warning): This { is literal. Check expression (missing ;/\n?) or quote it. ^----^ 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: eval local rtname=\${rt_"${rid}"} In srv6_end_dt4_l3vpn_test.sh line 253: ip -netns ${hsname} link add veth0 type veth peer name ${rtveth} ^-------^ SC2154 (warning): hsname is referenced but not assigned. ^-------^ 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 "${hsname}" link add veth0 type veth peer name "${rtveth}" In srv6_end_dt4_l3vpn_test.sh line 254: ip -netns ${hsname} link set ${rtveth} netns ${rtname} ^-------^ SC2086 (info): Double quote to prevent globbing and word splitting. ^-------^ SC2086 (info): Double quote to prevent globbing and word splitting. ^-------^ SC2154 (warning): rtname is referenced but not assigned. ^-------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip -netns "${hsname}" link set "${rtveth}" netns "${rtname}" In srv6_end_dt4_l3vpn_test.sh line 255: ip -netns ${hsname} addr add ${IPv4_HS_NETWORK}.${hid}/24 dev veth0 ^-------^ 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 "${hsname}" addr add ${IPv4_HS_NETWORK}."${hid}"/24 dev veth0 In srv6_end_dt4_l3vpn_test.sh line 256: ip -netns ${hsname} link set veth0 up ^-------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip -netns "${hsname}" link set veth0 up In srv6_end_dt4_l3vpn_test.sh line 257: ip -netns ${hsname} link set lo up ^-------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip -netns "${hsname}" link set lo up In srv6_end_dt4_l3vpn_test.sh line 261: ip -netns ${rtname} link add vrf-${tid} type vrf table ${tid} ^-------^ 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: ip -netns "${rtname}" link add vrf-"${tid}" type vrf table "${tid}" In srv6_end_dt4_l3vpn_test.sh line 262: ip -netns ${rtname} link set vrf-${tid} up ^-------^ 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 "${rtname}" link set vrf-"${tid}" up In srv6_end_dt4_l3vpn_test.sh line 265: ip -netns ${rtname} link set ${rtveth} master vrf-${tid} ^-------^ 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: ip -netns "${rtname}" link set "${rtveth}" master vrf-"${tid}" In srv6_end_dt4_l3vpn_test.sh line 266: ip -netns ${rtname} addr add ${IPv4_HS_NETWORK}.254/24 dev ${rtveth} ^-------^ 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 "${rtname}" addr add ${IPv4_HS_NETWORK}.254/24 dev "${rtveth}" In srv6_end_dt4_l3vpn_test.sh line 267: ip -netns ${rtname} link set ${rtveth} up ^-------^ 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 "${rtname}" link set "${rtveth}" up In srv6_end_dt4_l3vpn_test.sh line 269: ip netns exec ${rtname} sysctl -wq net.ipv4.conf.${rtveth}.proxy_arp=1 ^-------^ 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 "${rtname}" sysctl -wq net.ipv4.conf."${rtveth}".proxy_arp=1 In srv6_end_dt4_l3vpn_test.sh line 271: ip netns exec ${rtname} sh -c "echo 1 > /proc/sys/net/vrf/strict_mode" ^-------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip netns exec "${rtname}" sh -c "echo 1 > /proc/sys/net/vrf/strict_mode" In srv6_end_dt4_l3vpn_test.sh line 282: eval local rtsrc_name=\${rt_${rtsrc}} ^-- SC1083 (warning): This { is literal. Check expression (missing ;/\n?) or quote it. ^------^ 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: eval local rtsrc_name=\${rt_"${rtsrc}"} In srv6_end_dt4_l3vpn_test.sh line 283: eval local rtdst_name=\${rt_${rtdst}} ^-- SC1083 (warning): This { is literal. Check expression (missing ;/\n?) or quote it. ^------^ 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: eval local rtdst_name=\${rt_"${rtdst}"} In srv6_end_dt4_l3vpn_test.sh line 288: ip -netns ${rtsrc_name} -4 route add ${IPv4_HS_NETWORK}.${hsdst}/32 vrf vrf-${tid} \ ^-----------^ SC2154 (warning): rtsrc_name is referenced but not assigned. ^-----------^ 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: ip -netns "${rtsrc_name}" -4 route add ${IPv4_HS_NETWORK}."${hsdst}"/32 vrf vrf-"${tid}" \ In srv6_end_dt4_l3vpn_test.sh line 289: encap seg6 mode encap segs ${vpn_sid} dev veth0 ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: encap seg6 mode encap segs "${vpn_sid}" dev veth0 In srv6_end_dt4_l3vpn_test.sh line 290: ip -netns ${rtsrc_name} -6 route add ${vpn_sid}/128 \ ^-----------^ 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 "${rtsrc_name}" -6 route add "${vpn_sid}"/128 \ In srv6_end_dt4_l3vpn_test.sh line 291: via fd00::${rtdst} dev veth0 ^------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: via fd00::"${rtdst}" dev veth0 In srv6_end_dt4_l3vpn_test.sh line 295: ip -netns ${rtdst_name} -6 route add ${vpn_sid}/128 table ${LOCALSID_TABLE_ID} \ ^-----------^ SC2154 (warning): rtdst_name is referenced but not assigned (did you mean 'test_name'?). ^-----------^ 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 "${rtdst_name}" -6 route add "${vpn_sid}"/128 table ${LOCALSID_TABLE_ID} \ In srv6_end_dt4_l3vpn_test.sh line 296: encap seg6local action End.DT4 vrftable ${tid} dev vrf-${tid} ^----^ SC2086 (info): Double quote to prevent globbing and word splitting. ^----^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: encap seg6local action End.DT4 vrftable "${tid}" dev vrf-"${tid}" In srv6_end_dt4_l3vpn_test.sh line 303: if [ -z "$(ip -netns ${rtdst_name} -6 rule show | \ ^-- SC2143 (style): Use ! grep -q instead of comparing output with [ -z .. ]. ^-----------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: if [ -z "$(ip -netns "${rtdst_name}" -6 rule show | \ In srv6_end_dt4_l3vpn_test.sh line 305: ip -netns ${rtdst_name} -6 rule add \ ^-----------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip -netns "${rtdst_name}" -6 rule add \ In srv6_end_dt4_l3vpn_test.sh line 348: eval local nsname=\${rt_${rtsrc}} ^-- SC1083 (warning): This { is literal. Check expression (missing ;/\n?) or quote it. ^------^ 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: eval local nsname=\${rt_"${rtsrc}"} In srv6_end_dt4_l3vpn_test.sh line 350: ip netns exec ${nsname} ping -c 1 -W 1 ${IPv6_RT_NETWORK}::${rtdst} \ ^-------^ 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 "${nsname}" ping -c 1 -W 1 ${IPv6_RT_NETWORK}::"${rtdst}" \ In srv6_end_dt4_l3vpn_test.sh line 359: check_rt_connectivity ${rtsrc} ${rtdst} ^------^ SC2086 (info): Double quote to prevent globbing and word splitting. ^------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: check_rt_connectivity "${rtsrc}" "${rtdst}" In srv6_end_dt4_l3vpn_test.sh line 368: eval local nsname=\${hs_t${tid}_${hssrc}} ^-- SC1083 (warning): This { is literal. Check expression (missing ;/\n?) or quote it. ^----^ SC2086 (info): Double quote to prevent globbing and word splitting. ^------^ 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: eval local nsname=\${hs_t"${tid}"_"${hssrc}"} In srv6_end_dt4_l3vpn_test.sh line 370: ip netns exec ${nsname} ping -c 1 -W ${PING_TIMEOUT_SEC} \ ^-------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip netns exec "${nsname}" ping -c 1 -W ${PING_TIMEOUT_SEC} \ In srv6_end_dt4_l3vpn_test.sh line 371: ${IPv4_HS_NETWORK}.${hsdst} >/dev/null 2>&1 ^------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ${IPv4_HS_NETWORK}."${hsdst}" >/dev/null 2>&1 In srv6_end_dt4_l3vpn_test.sh line 380: check_hs_connectivity ${hssrc} ${hsdst} ${tid} ^------^ 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: check_hs_connectivity "${hssrc}" "${hsdst}" "${tid}" In srv6_end_dt4_l3vpn_test.sh line 391: check_hs_connectivity ${hssrc} ${hsdst} ${tidsrc} ^------^ 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: check_hs_connectivity "${hssrc}" "${hsdst}" "${tidsrc}" In srv6_end_dt4_l3vpn_test.sh line 402: check_hs_connectivity ${hssrc} 254 ${tid} ^------^ SC2086 (info): Double quote to prevent globbing and word splitting. ^----^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: check_hs_connectivity "${hssrc}" 254 "${tid}" In srv6_end_dt4_l3vpn_test.sh line 449: for k in 0 1; do ^-^ SC2034 (warning): k appears unused. Verify use (or export if used externally). In srv6_end_dt4_l3vpn_test.sh line 452: check_and_log_hs_isolation ${i} ${t1} ${j} ${t2} ^--^ SC2086 (info): Double quote to prevent globbing and word splitting. ^--^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: check_and_log_hs_isolation "${i}" ${t1} "${j}" ${t2} For more information: https://www.shellcheck.net/wiki/SC1083 -- This { is literal. Check expressi... https://www.shellcheck.net/wiki/SC2034 -- k appears unused. Verify use (or ... https://www.shellcheck.net/wiki/SC2154 -- hsname is referenced but not assi... Checking tools/testing/selftests/net/srv6_end_dt6_l3vpn_test.sh - 085b20c381adcefcdebeb69e10c66195eab37a7b3d1cd55a72ed582b49429649 In srv6_end_dt6_l3vpn_test.sh line 185: if [ ${rc} -eq ${expected} ]; 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 [ "${rc}" -eq "${expected}" ]; then In srv6_end_dt6_l3vpn_test.sh line 195: read a ^--^ SC2162 (info): read without -r will mangle backslashes. In srv6_end_dt6_l3vpn_test.sh line 204: printf "\nTests passed: %3d\n" ${nsuccess} ^---------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: printf "\nTests passed: %3d\n" "${nsuccess}" In srv6_end_dt6_l3vpn_test.sh line 205: printf "Tests failed: %3d\n" ${nfail} ^------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: printf "Tests failed: %3d\n" "${nfail}" In srv6_end_dt6_l3vpn_test.sh line 229: eval local nsname=\${rt_${id}} ^-- SC1083 (warning): This { is literal. Check expression (missing ;/\n?) or quote it. ^---^ 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: eval local nsname=\${rt_"${id}"} In srv6_end_dt6_l3vpn_test.sh line 231: ip link set veth-rt-${id} netns ${nsname} ^---^ SC2086 (info): Double quote to prevent globbing and word splitting. ^-------^ SC2154 (warning): nsname is referenced but not assigned (did you mean 'ns_name'?). ^-------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip link set veth-rt-"${id}" netns "${nsname}" In srv6_end_dt6_l3vpn_test.sh line 232: ip -netns ${nsname} link set veth-rt-${id} name veth0 ^-------^ 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 "${nsname}" link set veth-rt-"${id}" name veth0 In srv6_end_dt6_l3vpn_test.sh line 234: ip netns exec ${nsname} sysctl -wq net.ipv6.conf.all.accept_dad=0 ^-------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip netns exec "${nsname}" sysctl -wq net.ipv6.conf.all.accept_dad=0 In srv6_end_dt6_l3vpn_test.sh line 235: ip netns exec ${nsname} sysctl -wq net.ipv6.conf.default.accept_dad=0 ^-------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip netns exec "${nsname}" sysctl -wq net.ipv6.conf.default.accept_dad=0 In srv6_end_dt6_l3vpn_test.sh line 237: ip -netns ${nsname} addr add ${IPv6_RT_NETWORK}::${id}/64 dev veth0 nodad ^-------^ 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 "${nsname}" addr add ${IPv6_RT_NETWORK}::"${id}"/64 dev veth0 nodad In srv6_end_dt6_l3vpn_test.sh line 238: ip -netns ${nsname} link set veth0 up ^-------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip -netns "${nsname}" link set veth0 up In srv6_end_dt6_l3vpn_test.sh line 239: ip -netns ${nsname} link set lo up ^-------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip -netns "${nsname}" link set lo up In srv6_end_dt6_l3vpn_test.sh line 241: ip netns exec ${nsname} sysctl -wq net.ipv6.conf.all.forwarding=1 ^-------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip netns exec "${nsname}" sysctl -wq net.ipv6.conf.all.forwarding=1 In srv6_end_dt6_l3vpn_test.sh line 249: eval local hsname=\${hs_t${tid}_${hid}} ^-- SC1083 (warning): This { is literal. Check expression (missing ;/\n?) or quote it. ^----^ SC2086 (info): Double quote to prevent globbing and word splitting. ^----^ 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: eval local hsname=\${hs_t"${tid}"_"${hid}"} In srv6_end_dt6_l3vpn_test.sh line 250: eval local rtname=\${rt_${rid}} ^-- SC1083 (warning): This { is literal. Check expression (missing ;/\n?) or quote it. ^----^ 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: eval local rtname=\${rt_"${rid}"} In srv6_end_dt6_l3vpn_test.sh line 254: ip netns exec ${hsname} sysctl -wq net.ipv6.conf.all.accept_dad=0 ^-------^ SC2154 (warning): hsname is referenced but not assigned. ^-------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip netns exec "${hsname}" sysctl -wq net.ipv6.conf.all.accept_dad=0 In srv6_end_dt6_l3vpn_test.sh line 255: ip netns exec ${hsname} sysctl -wq net.ipv6.conf.default.accept_dad=0 ^-------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip netns exec "${hsname}" sysctl -wq net.ipv6.conf.default.accept_dad=0 In srv6_end_dt6_l3vpn_test.sh line 257: ip -netns ${hsname} link add veth0 type veth peer name ${rtveth} ^-------^ 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 "${hsname}" link add veth0 type veth peer name "${rtveth}" In srv6_end_dt6_l3vpn_test.sh line 258: ip -netns ${hsname} link set ${rtveth} netns ${rtname} ^-------^ SC2086 (info): Double quote to prevent globbing and word splitting. ^-------^ SC2086 (info): Double quote to prevent globbing and word splitting. ^-------^ SC2154 (warning): rtname is referenced but not assigned. ^-------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip -netns "${hsname}" link set "${rtveth}" netns "${rtname}" In srv6_end_dt6_l3vpn_test.sh line 259: ip -netns ${hsname} addr add ${IPv6_HS_NETWORK}::${hid}/64 dev veth0 nodad ^-------^ 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 "${hsname}" addr add ${IPv6_HS_NETWORK}::"${hid}"/64 dev veth0 nodad In srv6_end_dt6_l3vpn_test.sh line 260: ip -netns ${hsname} link set veth0 up ^-------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip -netns "${hsname}" link set veth0 up In srv6_end_dt6_l3vpn_test.sh line 261: ip -netns ${hsname} link set lo up ^-------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip -netns "${hsname}" link set lo up In srv6_end_dt6_l3vpn_test.sh line 265: ip -netns ${rtname} link add vrf-${tid} type vrf table ${tid} ^-------^ 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: ip -netns "${rtname}" link add vrf-"${tid}" type vrf table "${tid}" In srv6_end_dt6_l3vpn_test.sh line 266: ip -netns ${rtname} link set vrf-${tid} up ^-------^ 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 "${rtname}" link set vrf-"${tid}" up In srv6_end_dt6_l3vpn_test.sh line 268: ip netns exec ${rtname} sysctl -wq net.ipv6.conf.all.accept_dad=0 ^-------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip netns exec "${rtname}" sysctl -wq net.ipv6.conf.all.accept_dad=0 In srv6_end_dt6_l3vpn_test.sh line 269: ip netns exec ${rtname} sysctl -wq net.ipv6.conf.default.accept_dad=0 ^-------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip netns exec "${rtname}" sysctl -wq net.ipv6.conf.default.accept_dad=0 In srv6_end_dt6_l3vpn_test.sh line 272: ip -netns ${rtname} link set ${rtveth} master vrf-${tid} ^-------^ 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: ip -netns "${rtname}" link set "${rtveth}" master vrf-"${tid}" In srv6_end_dt6_l3vpn_test.sh line 273: ip -netns ${rtname} addr add ${IPv6_HS_NETWORK}::254/64 dev ${rtveth} nodad ^-------^ 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 "${rtname}" addr add ${IPv6_HS_NETWORK}::254/64 dev "${rtveth}" nodad In srv6_end_dt6_l3vpn_test.sh line 274: ip -netns ${rtname} link set ${rtveth} up ^-------^ 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 "${rtname}" link set "${rtveth}" up In srv6_end_dt6_l3vpn_test.sh line 276: ip netns exec ${rtname} sysctl -wq net.ipv6.conf.${rtveth}.proxy_ndp=1 ^-------^ 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 "${rtname}" sysctl -wq net.ipv6.conf."${rtveth}".proxy_ndp=1 In srv6_end_dt6_l3vpn_test.sh line 278: ip netns exec ${rtname} sh -c "echo 1 > /proc/sys/net/vrf/strict_mode" ^-------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip netns exec "${rtname}" sh -c "echo 1 > /proc/sys/net/vrf/strict_mode" In srv6_end_dt6_l3vpn_test.sh line 289: eval local rtsrc_name=\${rt_${rtsrc}} ^-- SC1083 (warning): This { is literal. Check expression (missing ;/\n?) or quote it. ^------^ 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: eval local rtsrc_name=\${rt_"${rtsrc}"} In srv6_end_dt6_l3vpn_test.sh line 290: eval local rtdst_name=\${rt_${rtdst}} ^-- SC1083 (warning): This { is literal. Check expression (missing ;/\n?) or quote it. ^------^ 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: eval local rtdst_name=\${rt_"${rtdst}"} In srv6_end_dt6_l3vpn_test.sh line 294: ip -netns ${rtsrc_name} -6 neigh add proxy ${IPv6_HS_NETWORK}::${hsdst} dev ${rtveth} ^-----------^ SC2154 (warning): rtsrc_name is referenced but not assigned. ^-----------^ 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: ip -netns "${rtsrc_name}" -6 neigh add proxy ${IPv6_HS_NETWORK}::"${hsdst}" dev "${rtveth}" In srv6_end_dt6_l3vpn_test.sh line 298: ip -netns ${rtsrc_name} -6 route add ${IPv6_HS_NETWORK}::${hsdst}/128 vrf vrf-${tid} \ ^-----------^ 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: ip -netns "${rtsrc_name}" -6 route add ${IPv6_HS_NETWORK}::"${hsdst}"/128 vrf vrf-"${tid}" \ In srv6_end_dt6_l3vpn_test.sh line 299: encap seg6 mode encap segs ${vpn_sid} dev veth0 ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: encap seg6 mode encap segs "${vpn_sid}" dev veth0 In srv6_end_dt6_l3vpn_test.sh line 300: ip -netns ${rtsrc_name} -6 route add ${vpn_sid}/128 \ ^-----------^ 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 "${rtsrc_name}" -6 route add "${vpn_sid}"/128 \ In srv6_end_dt6_l3vpn_test.sh line 301: via fd00::${rtdst} dev veth0 ^------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: via fd00::"${rtdst}" dev veth0 In srv6_end_dt6_l3vpn_test.sh line 305: ip -netns ${rtdst_name} -6 route add ${vpn_sid}/128 table ${LOCALSID_TABLE_ID} \ ^-----------^ SC2154 (warning): rtdst_name is referenced but not assigned (did you mean 'test_name'?). ^-----------^ 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 "${rtdst_name}" -6 route add "${vpn_sid}"/128 table ${LOCALSID_TABLE_ID} \ In srv6_end_dt6_l3vpn_test.sh line 306: encap seg6local action End.DT6 vrftable ${tid} dev vrf-${tid} ^----^ SC2086 (info): Double quote to prevent globbing and word splitting. ^----^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: encap seg6local action End.DT6 vrftable "${tid}" dev vrf-"${tid}" In srv6_end_dt6_l3vpn_test.sh line 313: if [ -z "$(ip -netns ${rtdst_name} -6 rule show | \ ^-- SC2143 (style): Use ! grep -q instead of comparing output with [ -z .. ]. ^-----------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: if [ -z "$(ip -netns "${rtdst_name}" -6 rule show | \ In srv6_end_dt6_l3vpn_test.sh line 315: ip -netns ${rtdst_name} -6 rule add \ ^-----------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip -netns "${rtdst_name}" -6 rule add \ In srv6_end_dt6_l3vpn_test.sh line 358: eval local nsname=\${rt_${rtsrc}} ^-- SC1083 (warning): This { is literal. Check expression (missing ;/\n?) or quote it. ^------^ 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: eval local nsname=\${rt_"${rtsrc}"} In srv6_end_dt6_l3vpn_test.sh line 360: ip netns exec ${nsname} ping -c 1 -W 1 ${IPv6_RT_NETWORK}::${rtdst} \ ^-------^ 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 "${nsname}" ping -c 1 -W 1 ${IPv6_RT_NETWORK}::"${rtdst}" \ In srv6_end_dt6_l3vpn_test.sh line 369: check_rt_connectivity ${rtsrc} ${rtdst} ^------^ SC2086 (info): Double quote to prevent globbing and word splitting. ^------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: check_rt_connectivity "${rtsrc}" "${rtdst}" In srv6_end_dt6_l3vpn_test.sh line 378: eval local nsname=\${hs_t${tid}_${hssrc}} ^-- SC1083 (warning): This { is literal. Check expression (missing ;/\n?) or quote it. ^----^ SC2086 (info): Double quote to prevent globbing and word splitting. ^------^ 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: eval local nsname=\${hs_t"${tid}"_"${hssrc}"} In srv6_end_dt6_l3vpn_test.sh line 380: ip netns exec ${nsname} ping -c 1 -W ${PING_TIMEOUT_SEC} \ ^-------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip netns exec "${nsname}" ping -c 1 -W ${PING_TIMEOUT_SEC} \ In srv6_end_dt6_l3vpn_test.sh line 381: ${IPv6_HS_NETWORK}::${hsdst} >/dev/null 2>&1 ^------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ${IPv6_HS_NETWORK}::"${hsdst}" >/dev/null 2>&1 In srv6_end_dt6_l3vpn_test.sh line 390: check_hs_connectivity ${hssrc} ${hsdst} ${tid} ^------^ 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: check_hs_connectivity "${hssrc}" "${hsdst}" "${tid}" In srv6_end_dt6_l3vpn_test.sh line 401: check_hs_connectivity ${hssrc} ${hsdst} ${tidsrc} ^------^ 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: check_hs_connectivity "${hssrc}" "${hsdst}" "${tidsrc}" In srv6_end_dt6_l3vpn_test.sh line 412: check_hs_connectivity ${hssrc} 254 ${tid} ^------^ SC2086 (info): Double quote to prevent globbing and word splitting. ^----^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: check_hs_connectivity "${hssrc}" 254 "${tid}" In srv6_end_dt6_l3vpn_test.sh line 459: for k in 0 1; do ^-^ SC2034 (warning): k appears unused. Verify use (or export if used externally). In srv6_end_dt6_l3vpn_test.sh line 462: check_and_log_hs_isolation ${i} ${t1} ${j} ${t2} ^--^ SC2086 (info): Double quote to prevent globbing and word splitting. ^--^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: check_and_log_hs_isolation "${i}" ${t1} "${j}" ${t2} For more information: https://www.shellcheck.net/wiki/SC1083 -- This { is literal. Check expressi... https://www.shellcheck.net/wiki/SC2034 -- k appears unused. Verify use (or ... https://www.shellcheck.net/wiki/SC2154 -- hsname is referenced but not assi...