selftests/mptcp: add diag listen tests
Check dumping of mptcp listener sockets: 1. filter by dport should not return any results 2. filter by sport should return listen sk 3. filter by saddr+sport should return listen sk 4. no filter should return listen sk Signed-off-by: Florian Westphal <fw@strlen.de> Signed-off-by: Mat Martineau <mathew.j.martineau@linux.intel.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
4fa39b701c
commit
f2ae0fa68e
1 changed files with 38 additions and 0 deletions
|
@ -71,6 +71,43 @@ chk_msk_remote_key_nr()
|
||||||
__chk_nr "grep -c remote_key" $*
|
__chk_nr "grep -c remote_key" $*
|
||||||
}
|
}
|
||||||
|
|
||||||
|
__chk_listen()
|
||||||
|
{
|
||||||
|
local filter="$1"
|
||||||
|
local expected=$2
|
||||||
|
|
||||||
|
shift 2
|
||||||
|
msg=$*
|
||||||
|
|
||||||
|
nr=$(ss -N $ns -Ml "$filter" | grep -c LISTEN)
|
||||||
|
printf "%-50s" "$msg"
|
||||||
|
|
||||||
|
if [ $nr != $expected ]; then
|
||||||
|
echo "[ fail ] expected $expected found $nr"
|
||||||
|
ret=$test_cnt
|
||||||
|
else
|
||||||
|
echo "[ ok ]"
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
chk_msk_listen()
|
||||||
|
{
|
||||||
|
lport=$1
|
||||||
|
local msg="check for listen socket"
|
||||||
|
|
||||||
|
# destination port search should always return empty list
|
||||||
|
__chk_listen "dport $lport" 0 "listen match for dport $lport"
|
||||||
|
|
||||||
|
# should return 'our' mptcp listen socket
|
||||||
|
__chk_listen "sport $lport" 1 "listen match for sport $lport"
|
||||||
|
|
||||||
|
__chk_listen "src inet:0.0.0.0:$lport" 1 "listen match for saddr and sport"
|
||||||
|
|
||||||
|
__chk_listen "" 1 "all listen sockets"
|
||||||
|
|
||||||
|
nr=$(ss -Ml $filter | wc -l)
|
||||||
|
}
|
||||||
|
|
||||||
# $1: ns, $2: port
|
# $1: ns, $2: port
|
||||||
wait_local_port_listen()
|
wait_local_port_listen()
|
||||||
{
|
{
|
||||||
|
@ -113,6 +150,7 @@ echo "a" | \
|
||||||
0.0.0.0 >/dev/null &
|
0.0.0.0 >/dev/null &
|
||||||
wait_local_port_listen $ns 10000
|
wait_local_port_listen $ns 10000
|
||||||
chk_msk_nr 0 "no msk on netns creation"
|
chk_msk_nr 0 "no msk on netns creation"
|
||||||
|
chk_msk_listen 10000
|
||||||
|
|
||||||
echo "b" | \
|
echo "b" | \
|
||||||
timeout ${timeout_test} \
|
timeout ${timeout_test} \
|
||||||
|
|
Loading…
Add table
Reference in a new issue