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.VfGvXSR4cz and /tmp/tmp.b6JSMQWsNI Tree base: d692ef001a4f ("neigh: discard invalid lladdr (b/mcast poison)") Now at: cc0858208ea8 ("selftests/net: add no NDP b/mcast,null poison test") ====== Checking before the patch ====== ====== Checking the tree with the patch ====== Checking tools/testing/selftests/net/arp_ndisc_no_invalid_sha_poison.sh - bf04350b8696d4b97dd73306a5754aa29a8ab47d0c02eaba67ba3ab6dd3ec597 In arp_ndisc_no_invalid_sha_poison.sh line 26: nsid=100 ^--^ SC2034 (warning): nsid appears unused. Verify use (or export if used externally). In arp_ndisc_no_invalid_sha_poison.sh line 36: ip link set dev veth1 netns ${PEER_NS} ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip link set dev veth1 netns "${PEER_NS}" In arp_ndisc_no_invalid_sha_poison.sh line 37: ip netns exec ${PEER_NS} ip link set dev veth1 up ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip netns exec "${PEER_NS}" ip link set dev veth1 up In arp_ndisc_no_invalid_sha_poison.sh line 40: ip netns exec ${PEER_NS} ip addr add ${V4_ADDR1}/24 dev veth1 ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip netns exec "${PEER_NS}" ip addr add ${V4_ADDR1}/24 dev veth1 In arp_ndisc_no_invalid_sha_poison.sh line 41: ip netns exec ${PEER_NS} ip route add default via ${V4_ADDR0} dev veth1 ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip netns exec "${PEER_NS}" ip route add default via ${V4_ADDR0} dev veth1 In arp_ndisc_no_invalid_sha_poison.sh line 43: ip netns exec ${PEER_NS} ip addr add ${V6_ADDR1}/64 dev veth1 ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip netns exec "${PEER_NS}" ip addr add ${V6_ADDR1}/64 dev veth1 In arp_ndisc_no_invalid_sha_poison.sh line 44: ip netns exec ${PEER_NS} ip route add default via ${V6_ADDR0} dev veth1 ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip netns exec "${PEER_NS}" ip route add default via ${V6_ADDR0} dev veth1 In arp_ndisc_no_invalid_sha_poison.sh line 49: ip netns exec ${PEER_NS} \ ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip netns exec "${PEER_NS}" \ In arp_ndisc_no_invalid_sha_poison.sh line 52: ip netns exec ${PEER_NS} \ ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip netns exec "${PEER_NS}" \ In arp_ndisc_no_invalid_sha_poison.sh line 57: veth1_mac="$(ip netns exec ${PEER_NS} ip -j link show veth1 | \ ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: veth1_mac="$(ip netns exec "${PEER_NS}" ip -j link show veth1 | \ In arp_ndisc_no_invalid_sha_poison.sh line 64: cleanup_ns ${PEER_NS} ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: cleanup_ns "${PEER_NS}" In arp_ndisc_no_invalid_sha_poison.sh line 75: ip netns exec ${PEER_NS} ip neigh flush dev veth1 >/dev/null 2>&1 ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip netns exec "${PEER_NS}" ip neigh flush dev veth1 >/dev/null 2>&1 In arp_ndisc_no_invalid_sha_poison.sh line 76: ip netns exec ${PEER_NS} ping -c 1 ${V4_ADDR0} >/dev/null 2>&1 ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip netns exec "${PEER_NS}" ping -c 1 ${V4_ADDR0} >/dev/null 2>&1 In arp_ndisc_no_invalid_sha_poison.sh line 79: ./arp_send ${veth0_ifindex} ${BCAST_MAC} ${VALID_MAC} ${op} \ ^--------------^ SC2086 (info): Double quote to prevent globbing and word splitting. ^---^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ./arp_send "${veth0_ifindex}" ${BCAST_MAC} ${VALID_MAC} "${op}" \ In arp_ndisc_no_invalid_sha_poison.sh line 82: neigh=$(ip netns exec ${PEER_NS} ip neigh show ${V4_ADDR0} | \ ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: neigh=$(ip netns exec "${PEER_NS}" ip neigh show ${V4_ADDR0} | \ In arp_ndisc_no_invalid_sha_poison.sh line 86: ip netns exec ${PEER_NS} ip neigh show ${V4_ADDR0} ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip netns exec "${PEER_NS}" ip neigh show ${V4_ADDR0} In arp_ndisc_no_invalid_sha_poison.sh line 92: ./arp_send ${veth0_ifindex} ${l2_dmac} ${VALID_MAC} ${op} \ ^--------------^ 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: ./arp_send "${veth0_ifindex}" "${l2_dmac}" ${VALID_MAC} "${op}" \ In arp_ndisc_no_invalid_sha_poison.sh line 93: ${V4_ADDR0} ${tmac} ${V4_ADDR0} ${tmac} ^-----^ SC2086 (info): Double quote to prevent globbing and word splitting. ^-----^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ${V4_ADDR0} "${tmac}" ${V4_ADDR0} "${tmac}" In arp_ndisc_no_invalid_sha_poison.sh line 95: neigh=$(ip netns exec ${PEER_NS} ip neigh show ${V4_ADDR0} | \ ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: neigh=$(ip netns exec "${PEER_NS}" ip neigh show ${V4_ADDR0} | \ In arp_ndisc_no_invalid_sha_poison.sh line 96: grep ${tmac}) ^-----^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: grep "${tmac}") In arp_ndisc_no_invalid_sha_poison.sh line 99: ip netns exec ${PEER_NS} ip neigh show ${V4_ADDR0} ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip netns exec "${PEER_NS}" ip neigh show ${V4_ADDR0} In arp_ndisc_no_invalid_sha_poison.sh line 119: ip netns exec ${PEER_NS} ip -6 neigh flush dev veth1 >/dev/null 2>&1 ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip netns exec "${PEER_NS}" ip -6 neigh flush dev veth1 >/dev/null 2>&1 In arp_ndisc_no_invalid_sha_poison.sh line 120: ip netns exec ${PEER_NS} ping -c 1 ${V6_ADDR0} >/dev/null 2>&1 ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip netns exec "${PEER_NS}" ping -c 1 ${V6_ADDR0} >/dev/null 2>&1 In arp_ndisc_no_invalid_sha_poison.sh line 123: ./ndisc_send ${veth0_ifindex} ${l2_dmac} ${VALID_MAC} ${dst_ip} \ ^--------------^ 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: ./ndisc_send "${veth0_ifindex}" "${l2_dmac}" ${VALID_MAC} "${dst_ip}" \ In arp_ndisc_no_invalid_sha_poison.sh line 124: ${V6_ADDR0} ${tip} ${op} ${VALID_MAC} ^---^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ${V6_ADDR0} ${tip} "${op}" ${VALID_MAC} In arp_ndisc_no_invalid_sha_poison.sh line 125: neigh=$(ip netns exec ${PEER_NS} ip neigh show ${V6_ADDR0} | \ ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: neigh=$(ip netns exec "${PEER_NS}" ip neigh show ${V6_ADDR0} | \ In arp_ndisc_no_invalid_sha_poison.sh line 129: ip netns exec ${PEER_NS} ip neigh show ${V6_ADDR0} ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip netns exec "${PEER_NS}" ip neigh show ${V6_ADDR0} In arp_ndisc_no_invalid_sha_poison.sh line 135: ./ndisc_send ${veth0_ifindex} ${l2_dmac} ${VALID_MAC} ${dst_ip} \ ^--------------^ 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: ./ndisc_send "${veth0_ifindex}" "${l2_dmac}" ${VALID_MAC} "${dst_ip}" \ In arp_ndisc_no_invalid_sha_poison.sh line 136: ${V6_ADDR0} ${tip} ${op} ${tmac} ^---^ SC2086 (info): Double quote to prevent globbing and word splitting. ^-----^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ${V6_ADDR0} ${tip} "${op}" "${tmac}" In arp_ndisc_no_invalid_sha_poison.sh line 137: neigh=$(ip netns exec ${PEER_NS} ip neigh show ${V6_ADDR0} | \ ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: neigh=$(ip netns exec "${PEER_NS}" ip neigh show ${V6_ADDR0} | \ In arp_ndisc_no_invalid_sha_poison.sh line 138: grep ${tmac}) ^-----^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: grep "${tmac}") In arp_ndisc_no_invalid_sha_poison.sh line 141: ip netns exec ${PEER_NS} ip neigh show ${V6_ADDR0} ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip netns exec "${PEER_NS}" ip neigh show ${V6_ADDR0} In arp_ndisc_no_invalid_sha_poison.sh line 151: if [ ${rc} == 0 ]; then ^---^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: if [ "${rc}" == 0 ]; then In arp_ndisc_no_invalid_sha_poison.sh line 191: run_no_arp_poisoning ${veth1_mac} ${BCAST_MAC} ${ARP_REPLY} ^----------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: run_no_arp_poisoning "${veth1_mac}" ${BCAST_MAC} ${ARP_REPLY} In arp_ndisc_no_invalid_sha_poison.sh line 195: run_no_arp_poisoning ${veth1_mac} ${NULL_MAC} ${ARP_REPLY} ^----------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: run_no_arp_poisoning "${veth1_mac}" ${NULL_MAC} ${ARP_REPLY} In arp_ndisc_no_invalid_sha_poison.sh line 199: run_no_arp_poisoning ${veth1_mac} ${BCAST_MAC} ${ARP_REQ} ^----------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: run_no_arp_poisoning "${veth1_mac}" ${BCAST_MAC} ${ARP_REQ} In arp_ndisc_no_invalid_sha_poison.sh line 203: run_no_arp_poisoning ${veth1_mac} ${NULL_MAC} ${ARP_REQ} ^----------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: run_no_arp_poisoning "${veth1_mac}" ${NULL_MAC} ${ARP_REQ} In arp_ndisc_no_invalid_sha_poison.sh line 207: run_no_arp_poisoning ${veth1_mac} ${MCAST_MAC} ${ARP_REQ} ^----------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: run_no_arp_poisoning "${veth1_mac}" ${MCAST_MAC} ${ARP_REQ} In arp_ndisc_no_invalid_sha_poison.sh line 211: run_no_arp_poisoning ${veth1_mac} ${MCAST_MAC} ${ARP_REPLY} ^----------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: run_no_arp_poisoning "${veth1_mac}" ${MCAST_MAC} ${ARP_REPLY} In arp_ndisc_no_invalid_sha_poison.sh line 284: run_no_ndp_poisoning ${veth1_mac} ${V6_ADDR1} ${NA} ${BCAST_MAC} ^----------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: run_no_ndp_poisoning "${veth1_mac}" ${V6_ADDR1} ${NA} ${BCAST_MAC} In arp_ndisc_no_invalid_sha_poison.sh line 288: run_no_ndp_poisoning ${veth1_mac} ${V6_ADDR1} ${NA} ${NULL_MAC} ^----------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: run_no_ndp_poisoning "${veth1_mac}" ${V6_ADDR1} ${NA} ${NULL_MAC} In arp_ndisc_no_invalid_sha_poison.sh line 296: run_no_ndp_poisoning ${veth1_mac} ${V6_ADDR1} ${NA} ${MCAST_MAC} ^----------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: run_no_ndp_poisoning "${veth1_mac}" ${V6_ADDR1} ${NA} ${MCAST_MAC} In arp_ndisc_no_invalid_sha_poison.sh line 336: run_no_ndp_poisoning ${veth1_mac} ${V6_ADDR1} ${NS} ${BCAST_MAC} ^----------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: run_no_ndp_poisoning "${veth1_mac}" ${V6_ADDR1} ${NS} ${BCAST_MAC} In arp_ndisc_no_invalid_sha_poison.sh line 340: run_no_ndp_poisoning ${veth1_mac} ${V6_ADDR1} ${NS} ${NULL_MAC} ^----------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: run_no_ndp_poisoning "${veth1_mac}" ${V6_ADDR1} ${NS} ${NULL_MAC} In arp_ndisc_no_invalid_sha_poison.sh line 349: run_no_ndp_poisoning ${veth1_mac} ${V6_ADDR1} ${NS} ${MCAST_MAC} ^----------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: run_no_ndp_poisoning "${veth1_mac}" ${V6_ADDR1} ${NS} ${MCAST_MAC} For more information: https://www.shellcheck.net/wiki/SC2034 -- nsid appears unused. Verify use (... https://www.shellcheck.net/wiki/SC2086 -- Double quote to prevent globbing ...