Skip to content

Commit 6208fd8

Browse files
geliangtangkuba-moo
authored andcommitted
selftests: mptcp: add testcases for newly added addresses
This patch adds testcases to create subflows or signal addresses for the newly added IPv4 or IPv6 addresses. Signed-off-by: Geliang Tang <[email protected]> Signed-off-by: Mat Martineau <[email protected]> Signed-off-by: Jakub Kicinski <[email protected]>
1 parent 2e8cbf4 commit 6208fd8

File tree

1 file changed

+71
-2
lines changed

1 file changed

+71
-2
lines changed

tools/testing/selftests/net/mptcp/mptcp_join.sh

Lines changed: 71 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -264,7 +264,23 @@ do_transfer()
264264
fi
265265
cpid=$!
266266

267-
if [ $addr_nr_ns1 -lt 0 ]; then
267+
if [ $addr_nr_ns1 -gt 0 ]; then
268+
let add_nr_ns1=addr_nr_ns1
269+
counter=2
270+
sleep 1
271+
while [ $add_nr_ns1 -gt 0 ]; do
272+
local addr
273+
if is_v6 "${connect_addr}"; then
274+
addr="dead:beef:$counter::1"
275+
else
276+
addr="10.0.$counter.1"
277+
fi
278+
ip netns exec $ns1 ./pm_nl_ctl add $addr flags signal
279+
let counter+=1
280+
let add_nr_ns1-=1
281+
done
282+
sleep 1
283+
elif [ $addr_nr_ns1 -lt 0 ]; then
268284
let rm_nr_ns1=-addr_nr_ns1
269285
if [ $rm_nr_ns1 -lt 8 ]; then
270286
counter=1
@@ -282,7 +298,23 @@ do_transfer()
282298
fi
283299
fi
284300

285-
if [ $addr_nr_ns2 -lt 0 ]; then
301+
if [ $addr_nr_ns2 -gt 0 ]; then
302+
let add_nr_ns2=addr_nr_ns2
303+
counter=3
304+
sleep 1
305+
while [ $add_nr_ns2 -gt 0 ]; do
306+
local addr
307+
if is_v6 "${connect_addr}"; then
308+
addr="dead:beef:$counter::2"
309+
else
310+
addr="10.0.$counter.2"
311+
fi
312+
ip netns exec $ns2 ./pm_nl_ctl add $addr flags subflow
313+
let counter+=1
314+
let add_nr_ns2-=1
315+
done
316+
sleep 1
317+
elif [ $addr_nr_ns2 -lt 0 ]; then
286318
let rm_nr_ns2=-addr_nr_ns2
287319
if [ $rm_nr_ns2 -lt 8 ]; then
288320
counter=1
@@ -738,6 +770,43 @@ chk_join_nr "flush subflows and signal" 3 3 3
738770
chk_add_nr 1 1
739771
chk_rm_nr 2 2
740772

773+
# add single subflow
774+
reset
775+
ip netns exec $ns1 ./pm_nl_ctl limits 0 1
776+
ip netns exec $ns2 ./pm_nl_ctl limits 0 1
777+
run_tests $ns1 $ns2 10.0.1.1 0 0 1 slow
778+
chk_join_nr "add single subflow" 1 1 1
779+
780+
# add signal address
781+
reset
782+
ip netns exec $ns1 ./pm_nl_ctl limits 0 1
783+
ip netns exec $ns2 ./pm_nl_ctl limits 1 1
784+
run_tests $ns1 $ns2 10.0.1.1 0 1 0 slow
785+
chk_join_nr "add signal address" 1 1 1
786+
chk_add_nr 1 1
787+
788+
# add multiple subflows
789+
reset
790+
ip netns exec $ns1 ./pm_nl_ctl limits 0 2
791+
ip netns exec $ns2 ./pm_nl_ctl limits 0 2
792+
run_tests $ns1 $ns2 10.0.1.1 0 0 2 slow
793+
chk_join_nr "add multiple subflows" 2 2 2
794+
795+
# add multiple subflows IPv6
796+
reset
797+
ip netns exec $ns1 ./pm_nl_ctl limits 0 2
798+
ip netns exec $ns2 ./pm_nl_ctl limits 0 2
799+
run_tests $ns1 $ns2 dead:beef:1::1 0 0 2 slow
800+
chk_join_nr "add multiple subflows IPv6" 2 2 2
801+
802+
# add multiple addresses IPv6
803+
reset
804+
ip netns exec $ns1 ./pm_nl_ctl limits 0 2
805+
ip netns exec $ns2 ./pm_nl_ctl limits 2 2
806+
run_tests $ns1 $ns2 dead:beef:1::1 0 2 0 slow
807+
chk_join_nr "add multiple addresses IPv6" 2 2 2
808+
chk_add_nr 2 2
809+
741810
# subflow IPv6
742811
reset
743812
ip netns exec $ns1 ./pm_nl_ctl limits 0 1

0 commit comments

Comments
 (0)