selftests: mptcp: add fullmesh setting tests

This patch added the fullmesh setting and clearing selftests in
mptcp_join.sh.

Now we can set both backup and fullmesh flags, so avoid using the
words 'backup' and 'bkup'.

Acked-by: Paolo Abeni <pabeni@redhat.com>
Signed-off-by: Geliang Tang <geliang.tang@suse.com>
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:
Geliang Tang 2022-02-02 17:03:43 -08:00 committed by David S. Miller
parent c25d29be00
commit 6a0653b96f
1 changed files with 43 additions and 6 deletions

View File

@ -289,7 +289,7 @@ do_transfer()
addr_nr_ns1="$7"
addr_nr_ns2="$8"
speed="$9"
bkup="${10}"
sflags="${10}"
port=$((10000+$TEST_COUNT))
TEST_COUNT=$((TEST_COUNT+1))
@ -461,14 +461,13 @@ do_transfer()
fi
fi
if [ ! -z $bkup ]; then
if [ ! -z $sflags ]; then
sleep 1
for netns in "$ns1" "$ns2"; do
dump=(`ip netns exec $netns ./pm_nl_ctl dump`)
if [ ${#dump[@]} -gt 0 ]; then
addr=${dump[${#dump[@]} - 1]}
backup="ip netns exec $netns ./pm_nl_ctl set $addr flags $bkup"
$backup
ip netns exec $netns ./pm_nl_ctl set $addr flags $sflags
fi
done
fi
@ -545,7 +544,7 @@ run_tests()
addr_nr_ns1="${5:-0}"
addr_nr_ns2="${6:-0}"
speed="${7:-fast}"
bkup="${8:-""}"
sflags="${8:-""}"
lret=0
oldin=""
@ -574,7 +573,7 @@ run_tests()
fi
do_transfer ${listener_ns} ${connector_ns} MPTCP MPTCP ${connect_addr} \
${test_linkfail} ${addr_nr_ns1} ${addr_nr_ns2} ${speed} ${bkup}
${test_linkfail} ${addr_nr_ns1} ${addr_nr_ns2} ${speed} ${sflags}
lret=$?
}
@ -1888,6 +1887,44 @@ fullmesh_tests()
run_tests $ns1 $ns2 10.0.1.1 0 0 fullmesh_2 slow
chk_join_nr "fullmesh test 1x2, limited" 4 4 4
chk_add_nr 1 1
# set fullmesh flag
reset
ip netns exec $ns1 ./pm_nl_ctl limits 4 4
ip netns exec $ns1 ./pm_nl_ctl add 10.0.2.1 flags subflow
ip netns exec $ns2 ./pm_nl_ctl limits 4 4
run_tests $ns1 $ns2 10.0.1.1 0 0 1 slow fullmesh
chk_join_nr "set fullmesh flag test" 2 2 2
chk_rm_nr 0 1
# set nofullmesh flag
reset
ip netns exec $ns1 ./pm_nl_ctl limits 4 4
ip netns exec $ns1 ./pm_nl_ctl add 10.0.2.1 flags subflow,fullmesh
ip netns exec $ns2 ./pm_nl_ctl limits 4 4
run_tests $ns1 $ns2 10.0.1.1 0 0 fullmesh_1 slow nofullmesh
chk_join_nr "set nofullmesh flag test" 2 2 2
chk_rm_nr 0 1
# set backup,fullmesh flags
reset
ip netns exec $ns1 ./pm_nl_ctl limits 4 4
ip netns exec $ns1 ./pm_nl_ctl add 10.0.2.1 flags subflow
ip netns exec $ns2 ./pm_nl_ctl limits 4 4
run_tests $ns1 $ns2 10.0.1.1 0 0 1 slow backup,fullmesh
chk_join_nr "set backup,fullmesh flags test" 2 2 2
chk_prio_nr 0 1
chk_rm_nr 0 1
# set nobackup,nofullmesh flags
reset
ip netns exec $ns1 ./pm_nl_ctl limits 4 4
ip netns exec $ns2 ./pm_nl_ctl limits 4 4
ip netns exec $ns2 ./pm_nl_ctl add 10.0.2.2 flags subflow,backup,fullmesh
run_tests $ns1 $ns2 10.0.1.1 0 0 0 slow nobackup,nofullmesh
chk_join_nr "set nobackup,nofullmesh flags test" 2 2 2
chk_prio_nr 0 1
chk_rm_nr 0 1
}
all_tests()