mirror of
https://github.com/torvalds/linux.git
synced 2024-11-25 21:51:40 +00:00
selftests: mptcp: connect: fix shellcheck warnings
shellcheck recently helped to prevent issues. It is then good to fix the other harmless issues in order to spot "real" ones later. Here, two categories of warnings are now ignored: - SC2317: Command appears to be unreachable. The cleanup() function is invoked indirectly via the EXIT trap. - SC2086: Double quote to prevent globbing and word splitting. This is recommended, but the current usage is correct and there is no need to do all these modifications to be compliant with this rule. For the modifications: - SC2034: ksft_skip appears unused. - SC2181: Check exit code directly with e.g. 'if mycmd;', not indirectly with $?. - SC2004: $/${} is unnecessary on arithmetic variables. - SC2155: Declare and assign separately to avoid masking return values. - SC2166: Prefer [ p ] && [ q ] as [ p -a q ] is not well defined. - SC2059: Don't use variables in the printf format string. Use printf '..%s..' "$foo". Now this script is shellcheck (0.9.0) compliant. We can easily spot new issues. Reviewed-by: Mat Martineau <martineau@kernel.org> Signed-off-by: Matthieu Baerts (NGI0) <matttbe@kernel.org> Link: https://lore.kernel.org/r/20240306-upstream-net-next-20240304-selftests-mptcp-shared-code-shellcheck-v2-8-bc79e6e5e6a0@kernel.org Signed-off-by: Jakub Kicinski <kuba@kernel.org>
This commit is contained in:
parent
97633aa74d
commit
e3aae1098f
@ -1,6 +1,11 @@
|
||||
#!/bin/bash
|
||||
# SPDX-License-Identifier: GPL-2.0
|
||||
|
||||
# Double quotes to prevent globbing and word splitting is recommended in new
|
||||
# code but we accept it, especially because there were too many before having
|
||||
# address all other issues detected by shellcheck.
|
||||
#shellcheck disable=SC2086
|
||||
|
||||
. "$(dirname "${0}")/mptcp_lib.sh"
|
||||
|
||||
time_start=$(date +%s)
|
||||
@ -13,7 +18,6 @@ sout=""
|
||||
cin_disconnect=""
|
||||
cin=""
|
||||
cout=""
|
||||
ksft_skip=4
|
||||
capture=false
|
||||
timeout_poll=30
|
||||
timeout_test=$((timeout_poll * 2 + 1))
|
||||
@ -129,6 +133,8 @@ ns4=""
|
||||
TEST_COUNT=0
|
||||
TEST_GROUP=""
|
||||
|
||||
# This function is used in the cleanup trap
|
||||
#shellcheck disable=SC2317
|
||||
cleanup()
|
||||
{
|
||||
rm -f "$cin_disconnect" "$cout_disconnect"
|
||||
@ -211,8 +217,9 @@ set_ethtool_flags() {
|
||||
local dev="$2"
|
||||
local flags="$3"
|
||||
|
||||
ip netns exec $ns ethtool -K $dev $flags 2>/dev/null
|
||||
[ $? -eq 0 ] && echo "INFO: set $ns dev $dev: ethtool -K $flags"
|
||||
if ip netns exec $ns ethtool -K $dev $flags 2>/dev/null; then
|
||||
echo "INFO: set $ns dev $dev: ethtool -K $flags"
|
||||
fi
|
||||
}
|
||||
|
||||
set_random_ethtool_flags() {
|
||||
@ -307,7 +314,7 @@ do_transfer()
|
||||
local extra_args="$7"
|
||||
|
||||
local port
|
||||
port=$((10000+$TEST_COUNT))
|
||||
port=$((10000+TEST_COUNT))
|
||||
TEST_COUNT=$((TEST_COUNT+1))
|
||||
|
||||
if [ "$rcvbuf" -gt 0 ]; then
|
||||
@ -365,12 +372,18 @@ do_transfer()
|
||||
nstat -n
|
||||
fi
|
||||
|
||||
local stat_synrx_last_l=$(mptcp_lib_get_counter "${listener_ns}" "MPTcpExtMPCapableSYNRX")
|
||||
local stat_ackrx_last_l=$(mptcp_lib_get_counter "${listener_ns}" "MPTcpExtMPCapableACKRX")
|
||||
local stat_cookietx_last=$(mptcp_lib_get_counter "${listener_ns}" "TcpExtSyncookiesSent")
|
||||
local stat_cookierx_last=$(mptcp_lib_get_counter "${listener_ns}" "TcpExtSyncookiesRecv")
|
||||
local stat_csum_err_s=$(mptcp_lib_get_counter "${listener_ns}" "MPTcpExtDataCsumErr")
|
||||
local stat_csum_err_c=$(mptcp_lib_get_counter "${connector_ns}" "MPTcpExtDataCsumErr")
|
||||
local stat_synrx_last_l
|
||||
local stat_ackrx_last_l
|
||||
local stat_cookietx_last
|
||||
local stat_cookierx_last
|
||||
local stat_csum_err_s
|
||||
local stat_csum_err_c
|
||||
stat_synrx_last_l=$(mptcp_lib_get_counter "${listener_ns}" "MPTcpExtMPCapableSYNRX")
|
||||
stat_ackrx_last_l=$(mptcp_lib_get_counter "${listener_ns}" "MPTcpExtMPCapableACKRX")
|
||||
stat_cookietx_last=$(mptcp_lib_get_counter "${listener_ns}" "TcpExtSyncookiesSent")
|
||||
stat_cookierx_last=$(mptcp_lib_get_counter "${listener_ns}" "TcpExtSyncookiesRecv")
|
||||
stat_csum_err_s=$(mptcp_lib_get_counter "${listener_ns}" "MPTcpExtDataCsumErr")
|
||||
stat_csum_err_c=$(mptcp_lib_get_counter "${connector_ns}" "MPTcpExtDataCsumErr")
|
||||
|
||||
timeout ${timeout_test} \
|
||||
ip netns exec ${listener_ns} \
|
||||
@ -433,11 +446,16 @@ do_transfer()
|
||||
mptcp_lib_check_transfer $cin $sout "file received by server"
|
||||
rets=$?
|
||||
|
||||
local stat_synrx_now_l=$(mptcp_lib_get_counter "${listener_ns}" "MPTcpExtMPCapableSYNRX")
|
||||
local stat_ackrx_now_l=$(mptcp_lib_get_counter "${listener_ns}" "MPTcpExtMPCapableACKRX")
|
||||
local stat_cookietx_now=$(mptcp_lib_get_counter "${listener_ns}" "TcpExtSyncookiesSent")
|
||||
local stat_cookierx_now=$(mptcp_lib_get_counter "${listener_ns}" "TcpExtSyncookiesRecv")
|
||||
local stat_ooo_now=$(mptcp_lib_get_counter "${listener_ns}" "TcpExtTCPOFOQueue")
|
||||
local stat_synrx_now_l
|
||||
local stat_ackrx_now_l
|
||||
local stat_cookietx_now
|
||||
local stat_cookierx_now
|
||||
local stat_ooo_now
|
||||
stat_synrx_now_l=$(mptcp_lib_get_counter "${listener_ns}" "MPTcpExtMPCapableSYNRX")
|
||||
stat_ackrx_now_l=$(mptcp_lib_get_counter "${listener_ns}" "MPTcpExtMPCapableACKRX")
|
||||
stat_cookietx_now=$(mptcp_lib_get_counter "${listener_ns}" "TcpExtSyncookiesSent")
|
||||
stat_cookierx_now=$(mptcp_lib_get_counter "${listener_ns}" "TcpExtSyncookiesRecv")
|
||||
stat_ooo_now=$(mptcp_lib_get_counter "${listener_ns}" "TcpExtTCPOFOQueue")
|
||||
|
||||
expect_synrx=$((stat_synrx_last_l))
|
||||
expect_ackrx=$((stat_ackrx_last_l))
|
||||
@ -446,8 +464,8 @@ do_transfer()
|
||||
cookies=${cookies##*=}
|
||||
|
||||
if [ ${cl_proto} = "MPTCP" ] && [ ${srv_proto} = "MPTCP" ]; then
|
||||
expect_synrx=$((stat_synrx_last_l+$connect_per_transfer))
|
||||
expect_ackrx=$((stat_ackrx_last_l+$connect_per_transfer))
|
||||
expect_synrx=$((stat_synrx_last_l+connect_per_transfer))
|
||||
expect_ackrx=$((stat_ackrx_last_l+connect_per_transfer))
|
||||
fi
|
||||
|
||||
if [ ${stat_synrx_now_l} -lt ${expect_synrx} ]; then
|
||||
@ -455,7 +473,7 @@ do_transfer()
|
||||
"${stat_synrx_now_l}" "${expect_synrx}" 1>&2
|
||||
retc=1
|
||||
fi
|
||||
if [ ${stat_ackrx_now_l} -lt ${expect_ackrx} -a ${stat_ooo_now} -eq 0 ]; then
|
||||
if [ ${stat_ackrx_now_l} -lt ${expect_ackrx} ] && [ ${stat_ooo_now} -eq 0 ]; then
|
||||
if [ ${stat_ooo_now} -eq 0 ]; then
|
||||
printf "[ FAIL ] lower MPC ACK rx (%d) than expected (%d)\n" \
|
||||
"${stat_ackrx_now_l}" "${expect_ackrx}" 1>&2
|
||||
@ -466,18 +484,20 @@ do_transfer()
|
||||
fi
|
||||
|
||||
if $checksum; then
|
||||
local csum_err_s=$(mptcp_lib_get_counter "${listener_ns}" "MPTcpExtDataCsumErr")
|
||||
local csum_err_c=$(mptcp_lib_get_counter "${connector_ns}" "MPTcpExtDataCsumErr")
|
||||
local csum_err_s
|
||||
local csum_err_c
|
||||
csum_err_s=$(mptcp_lib_get_counter "${listener_ns}" "MPTcpExtDataCsumErr")
|
||||
csum_err_c=$(mptcp_lib_get_counter "${connector_ns}" "MPTcpExtDataCsumErr")
|
||||
|
||||
local csum_err_s_nr=$((csum_err_s - stat_csum_err_s))
|
||||
if [ $csum_err_s_nr -gt 0 ]; then
|
||||
printf "[ FAIL ]\nserver got $csum_err_s_nr data checksum error[s]"
|
||||
printf "[ FAIL ]\nserver got %d data checksum error[s]" ${csum_err_s_nr}
|
||||
rets=1
|
||||
fi
|
||||
|
||||
local csum_err_c_nr=$((csum_err_c - stat_csum_err_c))
|
||||
if [ $csum_err_c_nr -gt 0 ]; then
|
||||
printf "[ FAIL ]\nclient got $csum_err_c_nr data checksum error[s]"
|
||||
printf "[ FAIL ]\nclient got %d data checksum error[s]" ${csum_err_c_nr}
|
||||
retc=1
|
||||
fi
|
||||
fi
|
||||
@ -645,7 +665,7 @@ run_test_transparent()
|
||||
return
|
||||
fi
|
||||
|
||||
ip netns exec "$listener_ns" nft -f /dev/stdin <<"EOF"
|
||||
if ! ip netns exec "$listener_ns" nft -f /dev/stdin <<"EOF"
|
||||
flush ruleset
|
||||
table inet mangle {
|
||||
chain divert {
|
||||
@ -656,7 +676,7 @@ table inet mangle {
|
||||
}
|
||||
}
|
||||
EOF
|
||||
if [ $? -ne 0 ]; then
|
||||
then
|
||||
echo "SKIP: $msg, could not load nft ruleset"
|
||||
mptcp_lib_fail_if_expected_feature "nft rules"
|
||||
mptcp_lib_result_skip "${TEST_GROUP}"
|
||||
@ -671,8 +691,7 @@ EOF
|
||||
local_addr="0.0.0.0"
|
||||
fi
|
||||
|
||||
ip -net "$listener_ns" $r6flag rule add fwmark 1 lookup 100
|
||||
if [ $? -ne 0 ]; then
|
||||
if ! ip -net "$listener_ns" $r6flag rule add fwmark 1 lookup 100; then
|
||||
ip netns exec "$listener_ns" nft flush ruleset
|
||||
echo "SKIP: $msg, ip $r6flag rule failed"
|
||||
mptcp_lib_fail_if_expected_feature "ip rule"
|
||||
@ -680,8 +699,7 @@ EOF
|
||||
return
|
||||
fi
|
||||
|
||||
ip -net "$listener_ns" route add local $local_addr/0 dev lo table 100
|
||||
if [ $? -ne 0 ]; then
|
||||
if ! ip -net "$listener_ns" route add local $local_addr/0 dev lo table 100; then
|
||||
ip netns exec "$listener_ns" nft flush ruleset
|
||||
ip -net "$listener_ns" $r6flag rule del fwmark 1 lookup 100
|
||||
echo "SKIP: $msg, ip route add local $local_addr failed"
|
||||
@ -844,7 +862,7 @@ stop_if_error "Could not even run ping tests"
|
||||
echo -n "INFO: Using loss of $tc_loss "
|
||||
test "$tc_delay" -gt 0 && echo -n "delay $tc_delay ms "
|
||||
|
||||
reorder_delay=$(($tc_delay / 4))
|
||||
reorder_delay=$((tc_delay / 4))
|
||||
|
||||
if [ -z "${tc_reorder}" ]; then
|
||||
reorder1=$((RANDOM%10))
|
||||
|
Loading…
Reference in New Issue
Block a user