selftests: mptcp: add the flush addrs testcase

This patch added the flush addrs testcase. In do_transfer, if the number
of removing addresses is less than 8, use the del addr command to remove
the addresses one by one. If the number is more than 8, use the flush addrs
command to remove the addresses.

Acked-by: Paolo Abeni <pabeni@redhat.com>
Signed-off-by: Geliang Tang <geliangtang@gmail.com>
Signed-off-by: Mat Martineau <mathew.j.martineau@linux.intel.com>
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
This commit is contained in:
Geliang Tang 2020-12-10 14:25:00 -08:00 committed by Jakub Kicinski
parent 141694df65
commit 6fe4ccdc3d
1 changed files with 38 additions and 16 deletions

View File

@ -264,27 +264,37 @@ do_transfer()
cpid=$!
if [ $rm_nr_ns1 -gt 0 ]; then
counter=1
sleep 1
while [ $counter -le $rm_nr_ns1 ]
do
ip netns exec ${listener_ns} ./pm_nl_ctl del $counter
if [ $rm_nr_ns1 -lt 8 ]; then
counter=1
sleep 1
let counter+=1
done
while [ $counter -le $rm_nr_ns1 ]
do
ip netns exec ${listener_ns} ./pm_nl_ctl del $counter
sleep 1
let counter+=1
done
else
sleep 1
ip netns exec ${listener_ns} ./pm_nl_ctl flush
fi
fi
if [ $rm_nr_ns2 -gt 0 ]; then
counter=1
sleep 1
while [ $counter -le $rm_nr_ns2 ]
do
ip netns exec ${connector_ns} ./pm_nl_ctl del $counter
if [ $rm_nr_ns2 -lt 8 ]; then
counter=1
sleep 1
let counter+=1
done
while [ $counter -le $rm_nr_ns2 ]
do
ip netns exec ${connector_ns} ./pm_nl_ctl del $counter
sleep 1
let counter+=1
done
else
sleep 1
ip netns exec ${connector_ns} ./pm_nl_ctl flush
fi
fi
wait $cpid
@ -663,6 +673,18 @@ chk_join_nr "remove subflows and signal" 3 3 3
chk_add_nr 1 1
chk_rm_nr 2 2
# subflows and signal, flush
reset
ip netns exec $ns1 ./pm_nl_ctl limits 0 3
ip netns exec $ns1 ./pm_nl_ctl add 10.0.2.1 flags signal
ip netns exec $ns2 ./pm_nl_ctl limits 1 3
ip netns exec $ns2 ./pm_nl_ctl add 10.0.3.2 flags subflow
ip netns exec $ns2 ./pm_nl_ctl add 10.0.4.2 flags subflow
run_tests $ns1 $ns2 10.0.1.1 0 8 8 slow
chk_join_nr "flush subflows and signal" 3 3 3
chk_add_nr 1 1
chk_rm_nr 2 2
# subflow IPv6
reset
ip netns exec $ns1 ./pm_nl_ctl limits 0 1