aboutsummaryrefslogtreecommitdiffstats
path: root/tools/testing/selftests/net
diff options
context:
space:
mode:
authorGeliang Tang <geliang.tang@suse.com>2022-03-04 11:36:34 -0800
committerJakub Kicinski <kuba@kernel.org>2022-03-04 21:54:31 -0800
commit8117dac3e7c31b2bf4e7d24d53b5e63625871e15 (patch)
treeb31989f7a963668ef7e0589beee9a9c5645a68fd /tools/testing/selftests/net
parentselftests: mptcp: add fastclose testcase (diff)
downloadlinux-dev-8117dac3e7c31b2bf4e7d24d53b5e63625871e15.tar.xz
linux-dev-8117dac3e7c31b2bf4e7d24d53b5e63625871e15.zip
selftests: mptcp: add invert check in check_transfer
This patch added the invert bytes check for the output data in check_transfer(). Instead of the file mismatch error: [ FAIL ] file received by server does not match (in, out): -rw------- 1 root root 45643832 Jan 16 15:04 /tmp/tmp.9xpM6Paivv Trailing bytes are: MPTCP_TEST_FILE_END_MARKER -rw------- 1 root root 45643832 Jan 16 15:04 /tmp/tmp.wnz1Yp4u7Z Trailing bytes are: MPTCP_TEST_FILE_END_MARKER Print out the inverted bytes like this: file received by server has inverted byte at 7454789 file received by server has inverted byte at 7454790 file received by server has inverted byte at 7454791 file received by server has inverted byte at 7454792 Signed-off-by: Geliang Tang <geliang.tang@suse.com> Signed-off-by: Mat Martineau <mathew.j.martineau@linux.intel.com> Signed-off-by: Jakub Kicinski <kuba@kernel.org>
Diffstat (limited to 'tools/testing/selftests/net')
-rwxr-xr-xtools/testing/selftests/net/mptcp/mptcp_join.sh25
1 files changed, 17 insertions, 8 deletions
diff --git a/tools/testing/selftests/net/mptcp/mptcp_join.sh b/tools/testing/selftests/net/mptcp/mptcp_join.sh
index 4604dd13a87e..f4812e820acf 100755
--- a/tools/testing/selftests/net/mptcp/mptcp_join.sh
+++ b/tools/testing/selftests/net/mptcp/mptcp_join.sh
@@ -15,6 +15,7 @@ timeout_test=$((timeout_poll * 2 + 1))
capture=0
checksum=0
ip_mptcp=0
+check_invert=0
do_all_tests=1
init=0
@@ -59,6 +60,8 @@ init_partial()
fi
done
+ check_invert=0
+
# ns1 ns2
# ns1eth1 ns2eth1
# ns1eth2 ns2eth2
@@ -216,15 +219,21 @@ check_transfer()
out=$2
what=$3
- cmp "$in" "$out" > /dev/null 2>&1
- if [ $? -ne 0 ] ;then
- echo "[ FAIL ] $what does not match (in, out):"
- print_file_err "$in"
- print_file_err "$out"
- ret=1
+ cmp -l "$in" "$out" | while read line; do
+ local arr=($line)
- return 1
- fi
+ let sum=0${arr[1]}+0${arr[2]}
+ if [ $check_invert -eq 0 ] || [ $sum -ne $((0xff)) ]; then
+ echo "[ FAIL ] $what does not match (in, out):"
+ print_file_err "$in"
+ print_file_err "$out"
+ ret=1
+
+ return 1
+ else
+ echo "$what has inverted byte at ${arr[0]}"
+ fi
+ done
return 0
}