Skip to content
This repository was archived by the owner on Oct 31, 2024. It is now read-only.

Commit 42f4277

Browse files
geliangtanggregkh
authored andcommitted
selftests: mptcp: update userspace pm test helpers
commit 757c828 upstream. This patch adds a new argument namespace to userspace_pm_add_addr() and userspace_pm_add_sf() to make these two helper more versatile. Add two more versatile helpers for userspace pm remove subflow or address: userspace_pm_rm_addr() and userspace_pm_rm_sf(). The original test helpers userspace_pm_rm_sf_addr_ns1() and userspace_pm_rm_sf_addr_ns2() can be replaced by these new helpers. Reviewed-by: Matthieu Baerts <matttbe@kernel.org> Signed-off-by: Geliang Tang <geliang.tang@suse.com> Signed-off-by: Mat Martineau <martineau@kernel.org> Link: https://lore.kernel.org/r/20231128-send-net-next-2023107-v4-4-8d6b94150f6b@kernel.org Signed-off-by: Jakub Kicinski <kuba@kernel.org> Signed-off-by: Matthieu Baerts (NGI0) <matttbe@kernel.org> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
1 parent 16ac627 commit 42f4277

1 file changed

Lines changed: 50 additions & 52 deletions

File tree

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

Lines changed: 50 additions & 52 deletions
Original file line numberDiff line numberDiff line change
@@ -2824,6 +2824,7 @@ backup_tests()
28242824
fi
28252825
}
28262826

2827+
SUB_ESTABLISHED=10 # MPTCP_EVENT_SUB_ESTABLISHED
28272828
LISTENER_CREATED=15 #MPTCP_EVENT_LISTENER_CREATED
28282829
LISTENER_CLOSED=16 #MPTCP_EVENT_LISTENER_CLOSED
28292830

@@ -3284,75 +3285,70 @@ fail_tests()
32843285
fi
32853286
}
32863287

3288+
# $1: ns ; $2: addr ; $3: id
32873289
userspace_pm_add_addr()
32883290
{
3289-
local addr=$1
3290-
local id=$2
3291+
local evts=$evts_ns1
32913292
local tk
32923293

3293-
tk=$(grep "type:1," "$evts_ns1" |
3294-
sed -n 's/.*\(token:\)\([[:digit:]]*\).*$/\2/p;q')
3295-
ip netns exec $ns1 ./pm_nl_ctl ann $addr token $tk id $id
3294+
[ "$1" == "$ns2" ] && evts=$evts_ns2
3295+
tk=$(mptcp_lib_evts_get_info token "$evts")
3296+
3297+
ip netns exec $1 ./pm_nl_ctl ann $2 token $tk id $3
32963298
sleep 1
32973299
}
32983300

3299-
userspace_pm_rm_sf_addr_ns1()
3301+
# $1: ns ; $2: id
3302+
userspace_pm_rm_addr()
33003303
{
3301-
local addr=$1
3302-
local id=$2
3303-
local tk sp da dp
3304-
local cnt_addr cnt_sf
3305-
3306-
tk=$(grep "type:1," "$evts_ns1" |
3307-
sed -n 's/.*\(token:\)\([[:digit:]]*\).*$/\2/p;q')
3308-
sp=$(grep "type:10" "$evts_ns1" |
3309-
sed -n 's/.*\(sport:\)\([[:digit:]]*\).*$/\2/p;q')
3310-
da=$(grep "type:10" "$evts_ns1" |
3311-
sed -n 's/.*\(daddr6:\)\([0-9a-f:.]*\).*$/\2/p;q')
3312-
dp=$(grep "type:10" "$evts_ns1" |
3313-
sed -n 's/.*\(dport:\)\([[:digit:]]*\).*$/\2/p;q')
3314-
cnt_addr=$(rm_addr_count ${ns1})
3315-
cnt_sf=$(rm_sf_count ${ns1})
3316-
ip netns exec $ns1 ./pm_nl_ctl rem token $tk id $id
3317-
ip netns exec $ns1 ./pm_nl_ctl dsf lip "::ffff:$addr" \
3318-
lport $sp rip $da rport $dp token $tk
3319-
wait_rm_addr $ns1 "${cnt_addr}"
3320-
wait_rm_sf $ns1 "${cnt_sf}"
3304+
local evts=$evts_ns1
3305+
local tk
3306+
local cnt
3307+
3308+
[ "$1" == "$ns2" ] && evts=$evts_ns2
3309+
tk=$(mptcp_lib_evts_get_info token "$evts")
3310+
3311+
cnt=$(rm_addr_count ${1})
3312+
ip netns exec $1 ./pm_nl_ctl rem token $tk id $2
3313+
wait_rm_addr $1 "${cnt}"
33213314
}
33223315

3316+
# $1: ns ; $2: addr ; $3: id
33233317
userspace_pm_add_sf()
33243318
{
3325-
local addr=$1
3326-
local id=$2
3319+
local evts=$evts_ns1
33273320
local tk da dp
33283321

3329-
tk=$(sed -n 's/.*\(token:\)\([[:digit:]]*\).*$/\2/p;q' "$evts_ns2")
3330-
da=$(sed -n 's/.*\(daddr4:\)\([0-9.]*\).*$/\2/p;q' "$evts_ns2")
3331-
dp=$(sed -n 's/.*\(dport:\)\([[:digit:]]*\).*$/\2/p;q' "$evts_ns2")
3332-
ip netns exec $ns2 ./pm_nl_ctl csf lip $addr lid $id \
3322+
[ "$1" == "$ns2" ] && evts=$evts_ns2
3323+
tk=$(mptcp_lib_evts_get_info token "$evts")
3324+
da=$(mptcp_lib_evts_get_info daddr4 "$evts")
3325+
dp=$(mptcp_lib_evts_get_info dport "$evts")
3326+
3327+
ip netns exec $1 ./pm_nl_ctl csf lip $2 lid $3 \
33333328
rip $da rport $dp token $tk
33343329
sleep 1
33353330
}
33363331

3337-
userspace_pm_rm_sf_addr_ns2()
3332+
# $1: ns ; $2: addr $3: event type
3333+
userspace_pm_rm_sf()
33383334
{
3339-
local addr=$1
3340-
local id=$2
3335+
local evts=$evts_ns1
3336+
local t=${3:-1}
3337+
local ip=4
33413338
local tk da dp sp
3342-
local cnt_addr cnt_sf
3343-
3344-
tk=$(sed -n 's/.*\(token:\)\([[:digit:]]*\).*$/\2/p;q' "$evts_ns2")
3345-
da=$(sed -n 's/.*\(daddr4:\)\([0-9.]*\).*$/\2/p;q' "$evts_ns2")
3346-
dp=$(sed -n 's/.*\(dport:\)\([[:digit:]]*\).*$/\2/p;q' "$evts_ns2")
3347-
sp=$(grep "type:10" "$evts_ns2" |
3348-
sed -n 's/.*\(sport:\)\([[:digit:]]*\).*$/\2/p;q')
3349-
cnt_addr=$(rm_addr_count ${ns2})
3350-
cnt_sf=$(rm_sf_count ${ns2})
3351-
ip netns exec $ns2 ./pm_nl_ctl rem token $tk id $id
3352-
ip netns exec $ns2 ./pm_nl_ctl dsf lip $addr lport $sp \
3339+
local cnt
3340+
3341+
[ "$1" == "$ns2" ] && evts=$evts_ns2
3342+
if is_v6 $2; then ip=6; fi
3343+
tk=$(mptcp_lib_evts_get_info token "$evts")
3344+
da=$(mptcp_lib_evts_get_info "daddr$ip" "$evts" $t)
3345+
dp=$(mptcp_lib_evts_get_info dport "$evts" $t)
3346+
sp=$(mptcp_lib_evts_get_info sport "$evts" $t)
3347+
3348+
cnt=$(rm_sf_count ${1})
3349+
ip netns exec $1 ./pm_nl_ctl dsf lip $2 lport $sp \
33533350
rip $da rport $dp token $tk
3354-
wait_rm_addr $ns2 "${cnt_addr}"
3355-
wait_rm_sf $ns2 "${cnt_sf}"
3351+
wait_rm_sf $1 "${cnt}"
33563352
}
33573353

33583354
userspace_tests()
@@ -3439,13 +3435,14 @@ userspace_tests()
34393435
run_tests $ns1 $ns2 10.0.1.1 &
34403436
local tests_pid=$!
34413437
wait_mpj $ns1
3442-
userspace_pm_add_addr 10.0.2.1 10
3438+
userspace_pm_add_addr $ns1 10.0.2.1 10
34433439
chk_join_nr 1 1 1
34443440
chk_add_nr 1 1
34453441
chk_mptcp_info subflows 1 subflows 1
34463442
chk_subflows_total 2 2
34473443
chk_mptcp_info add_addr_signal 1 add_addr_accepted 1
3448-
userspace_pm_rm_sf_addr_ns1 10.0.2.1 10
3444+
userspace_pm_rm_addr $ns1 10
3445+
userspace_pm_rm_sf $ns1 "::ffff:10.0.2.1" $SUB_ESTABLISHED
34493446
chk_rm_nr 1 1 invert
34503447
chk_mptcp_info subflows 0 subflows 0
34513448
chk_subflows_total 1 1
@@ -3462,11 +3459,12 @@ userspace_tests()
34623459
run_tests $ns1 $ns2 10.0.1.1 &
34633460
local tests_pid=$!
34643461
wait_mpj $ns2
3465-
userspace_pm_add_sf 10.0.3.2 20
3462+
userspace_pm_add_sf $ns2 10.0.3.2 20
34663463
chk_join_nr 1 1 1
34673464
chk_mptcp_info subflows 1 subflows 1
34683465
chk_subflows_total 2 2
3469-
userspace_pm_rm_sf_addr_ns2 10.0.3.2 20
3466+
userspace_pm_rm_addr $ns2 20
3467+
userspace_pm_rm_sf $ns2 10.0.3.2 $SUB_ESTABLISHED
34703468
chk_rm_nr 1 1
34713469
chk_mptcp_info subflows 0 subflows 0
34723470
chk_subflows_total 1 1

0 commit comments

Comments
 (0)