From nobody Mon May 6 16:11:30 2024 Received: from EUR03-AM7-obe.outbound.protection.outlook.com (mail-am7eur03on2059.outbound.protection.outlook.com [40.107.105.59]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id D803617CB for ; Sat, 26 Nov 2022 13:15:03 +0000 (UTC) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=YkOKbYAm3GG12x9+HyBlzhco1sePuw3lmE3R6NYIBFEw2wsDRu8A50U9qPhvzyO+hkLF8fUvzw54bp6RVBxu2cFgSv9JLMUkAVSK5CqSV7XTN8oJ0EJHSv3prxR8pCpHQHwt8/oOAhEYkQQcvczXVhcjyDR0IuMWgoM3VBzsJue3nzzcQuZKDVi3hrh0vPR/58PpjJ1NhYsZRehn5GD0x1H+jH1FUaCPAHQdI+0hkUBeQD0VAAaGlnZ/uGCYoa8bK7lqtdgI7EISzAGSxQUTEqLs+BgvY9lYTSWxhXZMMQPPv4JashjbVE3T2ODh68m/k0W2BTiYze/pkCyyoPz2yQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=RwommJP47Vy5ESvtyWQgOu9hHUbP/n99yf9dtt/5onM=; b=bnB+qVPFSuyZyT7bDJIzv0ueWgmkT/hj33Qre2bCK3Xwww6NbvhlcC8Zmjr9vY5a2N/kP1vu9GlQPsDMHV/Xbm8JzU0shFeCQb4OPHXUK7b0ba7QTfY+CgFLPYL4TcfBoOfBLM94HOrl4CdQvH1T/j0Fm2uy4UgbO1YqP5sF4btacgj14hFnYZ9Jr8AIreQEZ0xVBnB0cJw35uB/sjDpFgZt91Vf7E7fIONGnWaAExzx1nGeylcumOaS/U8lzVR8AuEO0EyqyDtvwPRxDDfpxqWFJJonloxI2WqW6R20D7HY/gfI1FD3Z9eIVJgKAAxfm2lZBG2SRPtja1CX/YCaAA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=RwommJP47Vy5ESvtyWQgOu9hHUbP/n99yf9dtt/5onM=; b=S9lw3dlOWnF9lbNIKXJM+wyGoR/XBPfghAs3+GFeSJnOb1ggARY09HKuVB8BqT5+ooiJXnO11B8wBEWj+cNHm3hUu8fYNkbRRdM/AoaxdBNrVl9KSY4x5Bm8McmairyKeFMgbv9cbpIj4pJFG1ApXOx/+8UowISGV6+M9T3urdHJUZdEYp/5ZuJo9DNud14Ntk5pYY/OIOAc3yoXkkDKo6cfzLZpMrdsI5mJDDXcP0JN4M4xtxu0uLcLKP0o3f92YcXizR9opJqoNVBfygVjy800SP0IePXO5uk0NcHGC4tatH3G6nCDvcRoXl3M27QusY1a9OVT6thfgj7gt9DP7g== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Received: from HE1PR0402MB3497.eurprd04.prod.outlook.com (2603:10a6:7:83::14) by AM9PR04MB8083.eurprd04.prod.outlook.com (2603:10a6:20b:3b5::15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5857.19; Sat, 26 Nov 2022 13:15:01 +0000 Received: from HE1PR0402MB3497.eurprd04.prod.outlook.com ([fe80::62bf:d98a:f54a:2852]) by HE1PR0402MB3497.eurprd04.prod.outlook.com ([fe80::62bf:d98a:f54a:2852%7]) with mapi id 15.20.5857.020; Sat, 26 Nov 2022 13:15:01 +0000 From: Geliang Tang To: mptcp@lists.linux.dev Cc: Geliang Tang , Paolo Abeni Subject: [PATCH mptcp-next v3 1/4] selftests: mptcp: make evts global in userspace_pm Date: Sat, 26 Nov 2022 21:15:19 +0800 Message-Id: <72a2fe4ba1bc121d019e6f1e4342ee46e7e7e7fe.1669468340.git.geliang.tang@suse.com> X-Mailer: git-send-email 2.35.3 In-Reply-To: References: Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: SG2PR02CA0008.apcprd02.prod.outlook.com (2603:1096:3:17::20) To HE1PR0402MB3497.eurprd04.prod.outlook.com (2603:10a6:7:83::14) Precedence: bulk X-Mailing-List: mptcp@lists.linux.dev List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: HE1PR0402MB3497:EE_|AM9PR04MB8083:EE_ X-MS-Office365-Filtering-Correlation-Id: 4345c3e9-b3b7-4c5a-02bd-08dacfb03937 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: /RaTwyAcf8Vuplw6v4TJ/GwrwhMfL65PkldkbyOah+nTWdi6sWeHN8PWI5NuBvkkkskHFaLAdytEy019tYBcphL/I/313Vd9aTyE+ra36krFlh8ALA8tCPnd2fOJxTuFJF6/Qf4MdyJuU6Cr1/i2B6VyG67xO1ZCEBSapWEDpB636if1jCVXuUA/IYBD/sttvbbbE9k7SQGtyY3VuYt/igD1AlYztwTASM8FcYiozz8W14qkZ9te5/0I2ZKHiMgrFxCjRfivnqfnFhfi6c9G4p70+Zv6iDneRmWtDnc9mI/0kQSN9aKXC0BJ91ZAlgbA3q8/5gkMdx/EmKJZAmc5tfztHLw2+A/hrBGJOvTlf4WUN5XDK9AaWV6V7fXT5yOc8EbBwMb5Ks5w1UPDZfk8Xhu6c8OgvMcT6nsuA5suBj4xZOvWMX9VnW0B5TPdTvLTfWKSpN1L+u71LRH7qUltf6vSFwUhKdfEsNixMDQhyV4r/PEOU0TBFXb3MlSa5pcPw66vf2d0Pqte1dFrgv9HJfwCldDOtuXP1zRHG0ig/RdqKWP1HGq1VcHO15VDoDivFMWlsRAk0dMhYKq2AQp8l0vsitL6RYeBVcueuX+FLBgWDLQKRqrusKNBOCtPqVzkCykOrCbee9KNAVnAtzdP3A== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:HE1PR0402MB3497.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230022)(366004)(136003)(376002)(396003)(39860400002)(346002)(451199015)(6512007)(26005)(36756003)(41300700001)(54906003)(4326008)(8676002)(66476007)(66556008)(66946007)(38100700002)(86362001)(186003)(6506007)(2616005)(478600001)(6666004)(6486002)(316002)(30864003)(6916009)(8936002)(2906002)(44832011)(83380400001)(5660300002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?7ZpVmEPnTzBRRoNzVJQSu6+9MZ5g8d1+Hz6xpViw5rUK5jiPv361VpSc7uvZ?= =?us-ascii?Q?kO38Cq8tbGM02kD928pXca0vdsIAKdKY2mzSJ8irOMzCz3fgrwjaNkkDf8k9?= =?us-ascii?Q?jxlDDhShBy72NvC+fiKDq/G8MZCKVxGVOMDFeUqyqPAqzhkl//ARvUVSKs8k?= =?us-ascii?Q?nrAgjELa1wuOuJAJlbIDmIJh0WgHFPiU200liTemMdRxhQSYA0hUs1aA/XnV?= =?us-ascii?Q?AJ0KxW/8PGW34zkWDkDYR6FaSejA7qfPjsOsGOcVcWLe2Y8npLOycA8KcE/V?= =?us-ascii?Q?D4Hb/iw/5B9til77VMoV4jw+8NriLhreLVxwOJgddjMX5IE/5hNUcIdV5TTO?= =?us-ascii?Q?m8eXxRnEFOaxrLYc1du6mbuE4Vd79BsWuZAv9L4cxnkgrbTBxNSY0cQnrvx9?= =?us-ascii?Q?b4VROrtkY7bzJeBstrpivbqIF4v4Ni4BYCbaPqRyRouffaWk62U0X2iY57tW?= =?us-ascii?Q?+sRVBMVA6h4VMITSnPq1iDqRkDpgqsOvHkoqwqeOl1dchdNjR8JtiE2fjO6L?= =?us-ascii?Q?xk7eJzSc4y6rkFSK6d2fDlJ/V8mGlGz+NdNBv61fPGwf4cY51rjqYhsVIj/M?= =?us-ascii?Q?bRt04V5NfjCSj1kdGVfLjo3B16MmCR7AcVi8FqxzH01yaxXwpVUc3szFHHb5?= =?us-ascii?Q?ed/NEqmjLhzdvPuoxV85JpXH2QJmpJEcHfZ4u33CaSGIPoaIMGPBcflJCKgW?= =?us-ascii?Q?i0FVR1Rs9tdDBzZ9NZ+3u/dfeCFh6QntGbuDrdO57qm2tRjp5KxbYRx+75F2?= =?us-ascii?Q?yAZjGQSd8SB5ZMvkQ4H/nveoOZjtZMLd+t1lMwrFhgvip1mfPyQtpMglQ6bX?= =?us-ascii?Q?0tmkrR7e3F3FSJEWpsFvCRhknvKpuWUOsXHyhYMcUJ/H1dkIubdSoJKRZaKE?= =?us-ascii?Q?chm+HVnsCMROsnYzUNUJ3/XLhBV8GEAzDdtFgeBV7n12eJ5r3JhPw84+qx40?= =?us-ascii?Q?YjajjmnO5ZpNN6hVuUtL8KhWQP49Y36OGnLnu9GMxrWjVxxoMTUK6lhMXnCs?= =?us-ascii?Q?uSzwiK09jmj/fBJL8fEpwuEn+KpPYv3oXQ7Ktw6NVHkm5jz/f1A2iV1ji3/d?= =?us-ascii?Q?/R1Wt7WdovRe/d1b/CmUS9VmMmcpDTVsAdCjOs47BbyrG2/f1IkWFAkm1C8P?= =?us-ascii?Q?t0dvQmt7OkrHkSp0hkqcbQUVsMddSS3HdNaROSngckX9ukqkqRxnBn9s7Lio?= =?us-ascii?Q?Gts4r0hEzJ0Ss/InlagiIAZLHcUCw4iNSGEpXTrtop+3ABdEKRdgd5aRgPJm?= =?us-ascii?Q?6Nc/uGnIYh25gEhw6Nz8hE6FqDoNlaZfs/s6yV+GJMjRDZDf2LDXtwkARaxH?= =?us-ascii?Q?ECvz4NlqfolZRq2fytPF2N8BIsbzn2dYnFybwpblxOi9+1Q1G04zPxfjmlw0?= =?us-ascii?Q?kd9ZZZ/sstTQTel6SUpUt10H9Xpr+bA5UrDWHiofWSepgEDwJnqYgJZTtHPV?= =?us-ascii?Q?0wwRqzHUn0liml2wm+y3L5hAzsDRtVmfTafIm1nBwF4R1WSemuCXSK5x0bPL?= =?us-ascii?Q?EWq2M3/YY7BXq+7l9HcjVIxWn4GSwzX75eQG749PR+S9/Hw+VC4VXO8pruF2?= =?us-ascii?Q?0tN37+yD1TNF3VB/NpVRuyvuxv7k5gBeB8OPqI9RgnQ/s+t4vDt17SMgXEgy?= =?us-ascii?Q?/A=3D=3D?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 4345c3e9-b3b7-4c5a-02bd-08dacfb03937 X-MS-Exchange-CrossTenant-AuthSource: HE1PR0402MB3497.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Nov 2022 13:15:01.1040 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: a92W6PbdutdN6HzNn9fOdO0cPhCjt0aG254gP+3GiYfOcu7odVZ2WTYKRmTgPo08MmDYNzM1yU5gbw6MRVGFwA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM9PR04MB8083 Content-Type: text/plain; charset="utf-8" This patch makes server_evts and client_evts global in userspace_pm.sh, then these two variables could be used in test_announce(), test_remove() and test_subflows(). The local variable 'evts' in these three functions then could be dropped. Suggested-by: Paolo Abeni Signed-off-by: Geliang Tang --- .../selftests/net/mptcp/userspace_pm.sh | 208 ++++++++---------- 1 file changed, 90 insertions(+), 118 deletions(-) diff --git a/tools/testing/selftests/net/mptcp/userspace_pm.sh b/tools/test= ing/selftests/net/mptcp/userspace_pm.sh index 40801279ebdf..f21da6119ad8 100755 --- a/tools/testing/selftests/net/mptcp/userspace_pm.sh +++ b/tools/testing/selftests/net/mptcp/userspace_pm.sh @@ -17,7 +17,10 @@ LISTENER_CLOSED=3D16 #MPTCP_EVENT_LISTENER_CLOSED AF_INET=3D2 AF_INET6=3D10 =20 -evts_pid=3D0 +server_evts=3D"" +client_evts=3D"" +server_evts_pid=3D0 +client_evts_pid=3D0 client4_pid=3D0 server4_pid=3D0 client6_pid=3D0 @@ -49,7 +52,7 @@ cleanup() { echo "cleanup" =20 - rm -rf $file + rm -f "$client_evts" "$server_evts" "$file" =20 # Terminate the MPTCP connection and related processes if [ $client4_pid -ne 0 ]; then @@ -64,8 +67,11 @@ cleanup() if [ $server6_pid -ne 0 ]; then kill_wait $server6_pid fi - if [ $evts_pid -ne 0 ]; then - kill_wait $evts_pid + if [ $server_evts_pid -ne 0 ]; then + kill_wait $server_evts_pid + fi + if [ $client_evts_pid -ne 0 ]; then + kill_wait $client_evts_pid fi local netns for netns in "$ns1" "$ns2" ;do @@ -134,16 +140,24 @@ make_connection() =20 # Capture netlink events over the two network namespaces running # the MPTCP client and server - local client_evts - client_evts=3D$(mktemp) + if [ -z "$client_evts" ]; then + client_evts=3D$(mktemp) + fi :>"$client_evts" + if [ $client_evts_pid -ne 0 ]; then + kill_wait $client_evts_pid + fi ip netns exec "$ns2" ./pm_nl_ctl events >> "$client_evts" 2>&1 & - local client_evts_pid=3D$! - local server_evts - server_evts=3D$(mktemp) + client_evts_pid=3D$! + if [ -z "$server_evts" ]; then + server_evts=3D$(mktemp) + fi :>"$server_evts" + if [ $server_evts_pid -ne 0 ]; then + kill_wait $server_evts_pid + fi ip netns exec "$ns1" ./pm_nl_ctl events >> "$server_evts" 2>&1 & - local server_evts_pid=3D$! + server_evts_pid=3D$! sleep 0.5 =20 # Run the server @@ -161,7 +175,6 @@ make_connection() sleep 1 =20 # Capture client/server attributes from MPTCP connection netlink events - kill_wait $client_evts_pid =20 local client_token local client_port @@ -173,12 +186,11 @@ make_connection() client_port=3D$(sed --unbuffered -n 's/.*\(sport:\)\([[:digit:]]*\).*$/\2= /p;q' "$client_evts") client_serverside=3D$(sed --unbuffered -n 's/.*\(server_side:\)\([[:digit= :]]*\).*$/\2/p;q'\ "$client_evts") - kill_wait $server_evts_pid server_token=3D$(grep "type:1," "$server_evts" | sed --unbuffered -n 's/.*\(token:\)\([[:digit:]]*\).*$/\2/p;q') server_serverside=3D$(grep "type:1," "$server_evts" | sed --unbuffered -n 's/.*\(server_side:\)\([[:digit:]]*\).*$/\2/p;q= ') - rm -f "$client_evts" "$server_evts" "$file" + rm -f "$file" =20 if [ "$client_token" !=3D "" ] && [ "$server_token" !=3D "" ] && [ "$clie= nt_serverside" =3D 0 ] && [ "$server_serverside" =3D 1 ] @@ -242,13 +254,8 @@ verify_announce_event() =20 test_announce() { - local evts - evts=3D$(mktemp) # Capture events on the network namespace running the server - :>"$evts" - ip netns exec "$ns1" ./pm_nl_ctl events >> "$evts" 2>&1 & - evts_pid=3D$! - sleep 0.5 + :>"$server_evts" =20 # ADD_ADDR using an invalid token should result in no action local invalid_token=3D$(( client4_token - 1)) @@ -256,7 +263,7 @@ test_announce() $client_addr_id dev ns2eth1 > /dev/null 2>&1 =20 local type - type=3D$(sed --unbuffered -n 's/.*\(type:\)\([[:digit:]]*\).*$/\2/p;q' "$= evts") + type=3D$(sed --unbuffered -n 's/.*\(type:\)\([[:digit:]]*\).*$/\2/p;q' "$= server_evts") stdbuf -o0 -e0 printf "ADD_ADDR 10.0.2.2 (ns2) =3D> ns1, invalid token = \t\t" if [ "$type" =3D "" ] then @@ -267,71 +274,63 @@ test_announce() fi =20 # ADD_ADDR from the client to server machine reusing the subflow port - :>"$evts" + :>"$server_evts" ip netns exec "$ns2"\ ./pm_nl_ctl ann 10.0.2.2 token "$client4_token" id $client_addr_id dev\ ns2eth1 > /dev/null 2>&1 stdbuf -o0 -e0 printf "ADD_ADDR id:%d 10.0.2.2 (ns2) =3D> ns1, reuse port= \t\t" $client_addr_id sleep 0.5 - verify_announce_event "$evts" "$ANNOUNCED" "$server4_token" "10.0.2.2" "$= client_addr_id"\ + verify_announce_event $server_evts $ANNOUNCED $server4_token "10.0.2.2" $= client_addr_id \ "$client4_port" =20 # ADD_ADDR6 from the client to server machine reusing the subflow port - :>"$evts" + :>"$server_evts" ip netns exec "$ns2" ./pm_nl_ctl ann\ dead:beef:2::2 token "$client6_token" id $client_addr_id dev ns2eth1 >= /dev/null 2>&1 stdbuf -o0 -e0 printf "ADD_ADDR6 id:%d dead:beef:2::2 (ns2) =3D> ns1, reu= se port\t\t" $client_addr_id sleep 0.5 - verify_announce_event "$evts" "$ANNOUNCED" "$server6_token" "dead:beef:2:= :2"\ + verify_announce_event "$server_evts" "$ANNOUNCED" "$server6_token" "dead:= beef:2::2"\ "$client_addr_id" "$client6_port" "v6" =20 # ADD_ADDR from the client to server machine using a new port - :>"$evts" + :>"$server_evts" client_addr_id=3D$((client_addr_id+1)) ip netns exec "$ns2" ./pm_nl_ctl ann 10.0.2.2 token "$client4_token" id\ $client_addr_id dev ns2eth1 port $new4_port > /dev/null 2>&1 stdbuf -o0 -e0 printf "ADD_ADDR id:%d 10.0.2.2 (ns2) =3D> ns1, new port \= t\t\t" $client_addr_id sleep 0.5 - verify_announce_event "$evts" "$ANNOUNCED" "$server4_token" "10.0.2.2"\ + verify_announce_event "$server_evts" "$ANNOUNCED" "$server4_token" "10.0.= 2.2"\ "$client_addr_id" "$new4_port" =20 - kill_wait $evts_pid - # Capture events on the network namespace running the client - :>"$evts" - ip netns exec "$ns2" ./pm_nl_ctl events >> "$evts" 2>&1 & - evts_pid=3D$! - sleep 0.5 + :>"$client_evts" =20 # ADD_ADDR from the server to client machine reusing the subflow port ip netns exec "$ns1" ./pm_nl_ctl ann 10.0.2.1 token "$server4_token" id\ $server_addr_id dev ns1eth2 > /dev/null 2>&1 stdbuf -o0 -e0 printf "ADD_ADDR id:%d 10.0.2.1 (ns1) =3D> ns2, reuse port= \t\t" $server_addr_id sleep 0.5 - verify_announce_event "$evts" "$ANNOUNCED" "$client4_token" "10.0.2.1"\ + verify_announce_event "$client_evts" "$ANNOUNCED" "$client4_token" "10.0.= 2.1"\ "$server_addr_id" "$app4_port" =20 # ADD_ADDR6 from the server to client machine reusing the subflow port - :>"$evts" + :>"$client_evts" ip netns exec "$ns1" ./pm_nl_ctl ann dead:beef:2::1 token "$server6_token= " id\ $server_addr_id dev ns1eth2 > /dev/null 2>&1 stdbuf -o0 -e0 printf "ADD_ADDR6 id:%d dead:beef:2::1 (ns1) =3D> ns2, reu= se port\t\t" $server_addr_id sleep 0.5 - verify_announce_event "$evts" "$ANNOUNCED" "$client6_token" "dead:beef:2:= :1"\ + verify_announce_event "$client_evts" "$ANNOUNCED" "$client6_token" "dead:= beef:2::1"\ "$server_addr_id" "$app6_port" "v6" =20 # ADD_ADDR from the server to client machine using a new port - :>"$evts" + :>"$client_evts" server_addr_id=3D$((server_addr_id+1)) ip netns exec "$ns1" ./pm_nl_ctl ann 10.0.2.1 token "$server4_token" id\ $server_addr_id dev ns1eth2 port $new4_port > /dev/null 2>&1 stdbuf -o0 -e0 printf "ADD_ADDR id:%d 10.0.2.1 (ns1) =3D> ns2, new port \= t\t\t" $server_addr_id sleep 0.5 - verify_announce_event "$evts" "$ANNOUNCED" "$client4_token" "10.0.2.1"\ + verify_announce_event "$client_evts" "$ANNOUNCED" "$client4_token" "10.0.= 2.1"\ "$server_addr_id" "$new4_port" - - kill_wait $evts_pid - rm -f "$evts" } =20 verify_remove_event() @@ -359,14 +358,8 @@ verify_remove_event() =20 test_remove() { - local evts - evts=3D$(mktemp) - # Capture events on the network namespace running the server - :>"$evts" - ip netns exec "$ns1" ./pm_nl_ctl events >> "$evts" 2>&1 & - evts_pid=3D$! - sleep 0.5 + :>"$server_evts" =20 # RM_ADDR using an invalid token should result in no action local invalid_token=3D$(( client4_token - 1 )) @@ -375,7 +368,7 @@ test_remove() stdbuf -o0 -e0 printf "RM_ADDR id:%d ns2 =3D> ns1, invalid token = \t"\ $client_addr_id local type - type=3D$(sed --unbuffered -n 's/.*\(type:\)\([[:digit:]]*\).*$/\2/p;q' "$= evts") + type=3D$(sed --unbuffered -n 's/.*\(type:\)\([[:digit:]]*\).*$/\2/p;q' "$= server_evts") if [ "$type" =3D "" ] then stdbuf -o0 -e0 printf "[OK]\n" @@ -389,7 +382,7 @@ test_remove() $invalid_id > /dev/null 2>&1 stdbuf -o0 -e0 printf "RM_ADDR id:%d ns2 =3D> ns1, invalid id = \t"\ $invalid_id - type=3D$(sed --unbuffered -n 's/.*\(type:\)\([[:digit:]]*\).*$/\2/p;q' "$= evts") + type=3D$(sed --unbuffered -n 's/.*\(type:\)\([[:digit:]]*\).*$/\2/p;q' "$= server_evts") if [ "$type" =3D "" ] then stdbuf -o0 -e0 printf "[OK]\n" @@ -398,40 +391,35 @@ test_remove() fi =20 # RM_ADDR from the client to server machine - :>"$evts" + :>"$server_evts" ip netns exec "$ns2" ./pm_nl_ctl rem token "$client4_token" id\ $client_addr_id > /dev/null 2>&1 stdbuf -o0 -e0 printf "RM_ADDR id:%d ns2 =3D> ns1 = \t"\ $client_addr_id sleep 0.5 - verify_remove_event "$evts" "$REMOVED" "$server4_token" "$client_addr_id" + verify_remove_event "$server_evts" "$REMOVED" "$server4_token" "$client_a= ddr_id" =20 # RM_ADDR from the client to server machine - :>"$evts" + :>"$server_evts" client_addr_id=3D$(( client_addr_id - 1 )) ip netns exec "$ns2" ./pm_nl_ctl rem token "$client4_token" id\ $client_addr_id > /dev/null 2>&1 stdbuf -o0 -e0 printf "RM_ADDR id:%d ns2 =3D> ns1 = \t"\ $client_addr_id sleep 0.5 - verify_remove_event "$evts" "$REMOVED" "$server4_token" "$client_addr_id" + verify_remove_event "$server_evts" "$REMOVED" "$server4_token" "$client_a= ddr_id" =20 # RM_ADDR6 from the client to server machine - :>"$evts" + :>"$server_evts" ip netns exec "$ns2" ./pm_nl_ctl rem token "$client6_token" id\ $client_addr_id > /dev/null 2>&1 stdbuf -o0 -e0 printf "RM_ADDR6 id:%d ns2 =3D> ns1 = \t"\ $client_addr_id sleep 0.5 - verify_remove_event "$evts" "$REMOVED" "$server6_token" "$client_addr_id" - - kill_wait $evts_pid + verify_remove_event "$server_evts" "$REMOVED" "$server6_token" "$client_a= ddr_id" =20 # Capture events on the network namespace running the client - :>"$evts" - ip netns exec "$ns2" ./pm_nl_ctl events >> "$evts" 2>&1 & - evts_pid=3D$! - sleep 0.5 + :>"$client_evts" =20 # RM_ADDR from the server to client machine ip netns exec "$ns1" ./pm_nl_ctl rem token "$server4_token" id\ @@ -439,27 +427,24 @@ test_remove() stdbuf -o0 -e0 printf "RM_ADDR id:%d ns1 =3D> ns2 = \t"\ $server_addr_id sleep 0.5 - verify_remove_event "$evts" "$REMOVED" "$client4_token" "$server_addr_id" + verify_remove_event "$client_evts" "$REMOVED" "$client4_token" "$server_a= ddr_id" =20 # RM_ADDR from the server to client machine - :>"$evts" + :>"$client_evts" server_addr_id=3D$(( server_addr_id - 1 )) ip netns exec "$ns1" ./pm_nl_ctl rem token "$server4_token" id\ $server_addr_id > /dev/null 2>&1 stdbuf -o0 -e0 printf "RM_ADDR id:%d ns1 =3D> ns2 = \t" $server_addr_id sleep 0.5 - verify_remove_event "$evts" "$REMOVED" "$client4_token" "$server_addr_id" + verify_remove_event "$client_evts" "$REMOVED" "$client4_token" "$server_a= ddr_id" =20 # RM_ADDR6 from the server to client machine - :>"$evts" + :>"$client_evts" ip netns exec "$ns1" ./pm_nl_ctl rem token "$server6_token" id\ $server_addr_id > /dev/null 2>&1 stdbuf -o0 -e0 printf "RM_ADDR6 id:%d ns1 =3D> ns2 = \t" $server_addr_id sleep 0.5 - verify_remove_event "$evts" "$REMOVED" "$client6_token" "$server_addr_id" - - kill_wait $evts_pid - rm -f "$evts" + verify_remove_event "$client_evts" "$REMOVED" "$client6_token" "$server_a= ddr_id" } =20 verify_subflow_events() @@ -535,13 +520,8 @@ verify_subflow_events() =20 test_subflows() { - local evts - evts=3D$(mktemp) # Capture events on the network namespace running the server - :>"$evts" - ip netns exec "$ns1" ./pm_nl_ctl events >> "$evts" 2>&1 & - evts_pid=3D$! - sleep 0.5 + :>"$server_evts" =20 # Attempt to add a listener at 10.0.2.2: ip netns exec "$ns2" ./pm_nl_ctl listen 10.0.2.2\ @@ -554,25 +534,25 @@ test_subflows() sleep 0.5 =20 # CREATE_SUBFLOW from server to client machine - :>"$evts" + :>"$server_evts" ip netns exec "$ns1" ./pm_nl_ctl csf lip 10.0.2.1 lid 23 rip 10.0.2.2\ rport "$client4_port" token "$server4_token" > /dev/null 2>&1 sleep 0.5 - verify_subflow_events "$evts" "$SUB_ESTABLISHED" "$server4_token" "$AF_IN= ET" "10.0.2.1"\ + verify_subflow_events $server_evts $SUB_ESTABLISHED $server4_token $AF_IN= ET "10.0.2.1" \ "10.0.2.2" "$client4_port" "23" "$client_addr_id" "ns1" "ns2" =20 # Delete the listener from the client ns, if one was created kill_wait $listener_pid =20 local sport - sport=3D$(sed --unbuffered -n 's/.*\(sport:\)\([[:digit:]]*\).*$/\2/p;q' = "$evts") + sport=3D$(sed --unbuffered -n 's/.*\(sport:\)\([[:digit:]]*\).*$/\2/p;q' = "$server_evts") =20 # DESTROY_SUBFLOW from server to client machine - :>"$evts" + :>"$server_evts" ip netns exec "$ns1" ./pm_nl_ctl dsf lip 10.0.2.1 lport "$sport" rip 10.0= .2.2 rport\ "$client4_port" token "$server4_token" > /dev/null 2>&1 sleep 0.5 - verify_subflow_events "$evts" "$SUB_CLOSED" "$server4_token" "$AF_INET" "= 10.0.2.1"\ + verify_subflow_events "$server_evts" "$SUB_CLOSED" "$server4_token" "$AF_= INET" "10.0.2.1"\ "10.0.2.2" "$client4_port" "23" "$client_addr_id" "ns1" "ns2" =20 # RM_ADDR from client to server machine @@ -586,31 +566,31 @@ test_subflows() listener_pid=3D$! =20 # ADD_ADDR6 from client to server machine reusing the subflow port - :>"$evts" + :>"$server_evts" ip netns exec "$ns2" ./pm_nl_ctl ann dead:beef:2::2 token "$client6_token= " id\ $client_addr_id > /dev/null 2>&1 sleep 0.5 =20 # CREATE_SUBFLOW6 from server to client machine - :>"$evts" + :>"$server_evts" ip netns exec "$ns1" ./pm_nl_ctl csf lip dead:beef:2::1 lid 23 rip\ dead:beef:2::2 rport "$client6_port" token "$server6_token" > /dev/nul= l 2>&1 sleep 0.5 - verify_subflow_events "$evts" "$SUB_ESTABLISHED" "$server6_token" "$AF_IN= ET6"\ + verify_subflow_events "$server_evts" "$SUB_ESTABLISHED" "$server6_token" = "$AF_INET6"\ "dead:beef:2::1" "dead:beef:2::2" "$client6_port" "23"\ "$client_addr_id" "ns1" "ns2" =20 # Delete the listener from the client ns, if one was created kill_wait $listener_pid =20 - sport=3D$(sed --unbuffered -n 's/.*\(sport:\)\([[:digit:]]*\).*$/\2/p;q' = "$evts") + sport=3D$(sed --unbuffered -n 's/.*\(sport:\)\([[:digit:]]*\).*$/\2/p;q' = "$server_evts") =20 # DESTROY_SUBFLOW6 from server to client machine - :>"$evts" + :>"$server_evts" ip netns exec "$ns1" ./pm_nl_ctl dsf lip dead:beef:2::1 lport "$sport" ri= p\ dead:beef:2::2 rport "$client6_port" token "$server6_token" > /dev/nul= l 2>&1 sleep 0.5 - verify_subflow_events "$evts" "$SUB_CLOSED" "$server6_token" "$AF_INET6"\ + verify_subflow_events "$server_evts" "$SUB_CLOSED" "$server6_token" "$AF_= INET6"\ "dead:beef:2::1" "dead:beef:2::2" "$client6_port" "23"\ "$client_addr_id" "ns1" "ns2" =20 @@ -625,44 +605,39 @@ test_subflows() listener_pid=3D$! =20 # ADD_ADDR from client to server machine using a new port - :>"$evts" + :>"$server_evts" ip netns exec "$ns2" ./pm_nl_ctl ann 10.0.2.2 token "$client4_token" id\ $client_addr_id port $new4_port > /dev/null 2>&1 sleep 0.5 =20 # CREATE_SUBFLOW from server to client machine - :>"$evts" + :>"$server_evts" ip netns exec "$ns1" ./pm_nl_ctl csf lip 10.0.2.1 lid 23 rip 10.0.2.2 rpo= rt\ $new4_port token "$server4_token" > /dev/null 2>&1 sleep 0.5 - verify_subflow_events "$evts" "$SUB_ESTABLISHED" "$server4_token" "$AF_IN= ET"\ + verify_subflow_events "$server_evts" "$SUB_ESTABLISHED" "$server4_token" = "$AF_INET"\ "10.0.2.1" "10.0.2.2" "$new4_port" "23"\ "$client_addr_id" "ns1" "ns2" =20 # Delete the listener from the client ns, if one was created kill_wait $listener_pid =20 - sport=3D$(sed --unbuffered -n 's/.*\(sport:\)\([[:digit:]]*\).*$/\2/p;q' = "$evts") + sport=3D$(sed --unbuffered -n 's/.*\(sport:\)\([[:digit:]]*\).*$/\2/p;q' = "$server_evts") =20 # DESTROY_SUBFLOW from server to client machine - :>"$evts" + :>"$server_evts" ip netns exec "$ns1" ./pm_nl_ctl dsf lip 10.0.2.1 lport "$sport" rip 10.0= .2.2 rport\ $new4_port token "$server4_token" > /dev/null 2>&1 sleep 0.5 - verify_subflow_events "$evts" "$SUB_CLOSED" "$server4_token" "$AF_INET" "= 10.0.2.1"\ + verify_subflow_events "$server_evts" "$SUB_CLOSED" "$server4_token" "$AF_= INET" "10.0.2.1"\ "10.0.2.2" "$new4_port" "23" "$client_addr_id" "ns1" "ns2" =20 # RM_ADDR from client to server machine ip netns exec "$ns2" ./pm_nl_ctl rem id $client_addr_id token\ "$client4_token" > /dev/null 2>&1 =20 - kill_wait $evts_pid - # Capture events on the network namespace running the client - :>"$evts" - ip netns exec "$ns2" ./pm_nl_ctl events >> "$evts" 2>&1 & - evts_pid=3D$! - sleep 0.5 + :>"$client_evts" =20 # Attempt to add a listener at 10.0.2.1: ip netns exec "$ns1" ./pm_nl_ctl listen 10.0.2.1\ @@ -675,24 +650,24 @@ test_subflows() sleep 0.5 =20 # CREATE_SUBFLOW from client to server machine - :>"$evts" + :>"$client_evts" ip netns exec "$ns2" ./pm_nl_ctl csf lip 10.0.2.2 lid 23 rip 10.0.2.1 rpo= rt\ $app4_port token "$client4_token" > /dev/null 2>&1 sleep 0.5 - verify_subflow_events "$evts" "$SUB_ESTABLISHED" "$client4_token" "$AF_IN= ET" "10.0.2.2"\ + verify_subflow_events $client_evts $SUB_ESTABLISHED $client4_token $AF_IN= ET "10.0.2.2"\ "10.0.2.1" "$app4_port" "23" "$server_addr_id" "ns2" "ns1" =20 # Delete the listener from the server ns, if one was created kill_wait $listener_pid =20 - sport=3D$(sed --unbuffered -n 's/.*\(sport:\)\([[:digit:]]*\).*$/\2/p;q' = "$evts") + sport=3D$(sed --unbuffered -n 's/.*\(sport:\)\([[:digit:]]*\).*$/\2/p;q' = "$client_evts") =20 # DESTROY_SUBFLOW from client to server machine - :>"$evts" + :>"$client_evts" ip netns exec "$ns2" ./pm_nl_ctl dsf lip 10.0.2.2 lport "$sport" rip 10.0= .2.1 rport\ $app4_port token "$client4_token" > /dev/null 2>&1 sleep 0.5 - verify_subflow_events "$evts" "$SUB_CLOSED" "$client4_token" "$AF_INET" "= 10.0.2.2"\ + verify_subflow_events "$client_evts" "$SUB_CLOSED" "$client4_token" "$AF_= INET" "10.0.2.2"\ "10.0.2.1" "$app4_port" "23" "$server_addr_id" "ns2" "ns1" =20 # RM_ADDR from server to client machine @@ -706,17 +681,17 @@ test_subflows() listener_pid=3D$! =20 # ADD_ADDR6 from server to client machine reusing the subflow port - :>"$evts" + :>"$client_evts" ip netns exec "$ns1" ./pm_nl_ctl ann dead:beef:2::1 token "$server6_token= " id\ $server_addr_id > /dev/null 2>&1 sleep 0.5 =20 # CREATE_SUBFLOW6 from client to server machine - :>"$evts" + :>"$client_evts" ip netns exec "$ns2" ./pm_nl_ctl csf lip dead:beef:2::2 lid 23 rip\ dead:beef:2::1 rport $app6_port token "$client6_token" > /dev/null 2>&1 sleep 0.5 - verify_subflow_events "$evts" "$SUB_ESTABLISHED" "$client6_token"\ + verify_subflow_events "$client_evts" "$SUB_ESTABLISHED" "$client6_token"\ "$AF_INET6" "dead:beef:2::2"\ "dead:beef:2::1" "$app6_port" "23"\ "$server_addr_id" "ns2" "ns1" @@ -724,14 +699,14 @@ test_subflows() # Delete the listener from the server ns, if one was created kill_wait $listener_pid =20 - sport=3D$(sed --unbuffered -n 's/.*\(sport:\)\([[:digit:]]*\).*$/\2/p;q' = "$evts") + sport=3D$(sed --unbuffered -n 's/.*\(sport:\)\([[:digit:]]*\).*$/\2/p;q' = "$client_evts") =20 # DESTROY_SUBFLOW6 from client to server machine - :>"$evts" + :>"$client_evts" ip netns exec "$ns2" ./pm_nl_ctl dsf lip dead:beef:2::2 lport "$sport" ri= p\ dead:beef:2::1 rport $app6_port token "$client6_token" > /dev/null 2>&1 sleep 0.5 - verify_subflow_events "$evts" "$SUB_CLOSED" "$client6_token" "$AF_INET6" = "dead:beef:2::2"\ + verify_subflow_events $client_evts $SUB_CLOSED $client6_token $AF_INET6 "= dead:beef:2::2"\ "dead:beef:2::1" "$app6_port" "23" "$server_addr_id" "ns2" "ns1" =20 # RM_ADDR6 from server to client machine @@ -745,38 +720,35 @@ test_subflows() listener_pid=3D$! =20 # ADD_ADDR from server to client machine using a new port - :>"$evts" + :>"$client_evts" ip netns exec "$ns1" ./pm_nl_ctl ann 10.0.2.1 token "$server4_token" id\ $server_addr_id port $new4_port > /dev/null 2>&1 sleep 0.5 =20 # CREATE_SUBFLOW from client to server machine - :>"$evts" + :>"$client_evts" ip netns exec "$ns2" ./pm_nl_ctl csf lip 10.0.2.2 lid 23 rip 10.0.2.1 rpo= rt\ $new4_port token "$client4_token" > /dev/null 2>&1 sleep 0.5 - verify_subflow_events "$evts" "$SUB_ESTABLISHED" "$client4_token" "$AF_IN= ET"\ + verify_subflow_events "$client_evts" "$SUB_ESTABLISHED" "$client4_token" = "$AF_INET"\ "10.0.2.2" "10.0.2.1" "$new4_port" "23" "$server_addr_id" "ns2" "= ns1" =20 # Delete the listener from the server ns, if one was created kill_wait $listener_pid =20 - sport=3D$(sed --unbuffered -n 's/.*\(sport:\)\([[:digit:]]*\).*$/\2/p;q' = "$evts") + sport=3D$(sed --unbuffered -n 's/.*\(sport:\)\([[:digit:]]*\).*$/\2/p;q' = "$client_evts") =20 # DESTROY_SUBFLOW from client to server machine - :>"$evts" + :>"$client_evts" ip netns exec "$ns2" ./pm_nl_ctl dsf lip 10.0.2.2 lport "$sport" rip 10.0= .2.1 rport\ $new4_port token "$client4_token" > /dev/null 2>&1 sleep 0.5 - verify_subflow_events "$evts" "$SUB_CLOSED" "$client4_token" "$AF_INET" "= 10.0.2.2"\ + verify_subflow_events "$client_evts" "$SUB_CLOSED" "$client4_token" "$AF_= INET" "10.0.2.2"\ "10.0.2.1" "$new4_port" "23" "$server_addr_id" "ns2" "ns1" =20 # RM_ADDR from server to client machine ip netns exec "$ns1" ./pm_nl_ctl rem id $server_addr_id token\ "$server4_token" > /dev/null 2>&1 - - kill_wait $evts_pid - rm -f "$evts" } =20 test_prio() --=20 2.35.3 From nobody Mon May 6 16:11:30 2024 Received: from EUR01-VE1-obe.outbound.protection.outlook.com (mail-ve1eur01on2075.outbound.protection.outlook.com [40.107.14.75]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 1390D193 for ; Sat, 26 Nov 2022 13:15:10 +0000 (UTC) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Y/KICPjVGNFEavZvoap2pWKAJb61F8okL43X9201VWnqKAGd6zS4lQfCDhKyyeFFUAIToRJzUkgqnAtrGP1xNhOSCLAP7uILbcqCFnGeI1x0i2TjA8KXv9mSk35MG2nUAYnhMTvhHaqzdvrAsMxjNIg92M2RXmiFTW/OPV1kS7AB5NERRnCZzy2l6J2LP+o4E8LGr9NnuKXvHlvBhkXwve+C33XK3RjznjDSvG9TN/POnYIdT60av8e8IY7IOul/jRqs/XH+75PSoSXX2lvA5GOFNmIxzyiNnl79kG6bIGGmEL4olI6bRf8tdG9jqmKLYjr4sZ2ARwEm4l4LBoMbpw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=Je5ZH6fxyEMpdU377mEtLmT9Nve4QKMam4DdBaSSODk=; b=de6W/6jMT854LYqO5HqScKekIRDFFtEsBbJtidmW9itYxYKl1XlHVA5IixHyyYdSaEVViSoCT/o4rVitc7bboP/HWzcmthkgsfg8UyQc7q+6ImJr6iuMqWaWGiORq2CY1GqaCd4Oh15sZkDlK7tm40iI8Sf0GgdWGArad865tmAhIFB6R9yU5l/F30ya2OQrJ7sfAoU2K9P+LAd9hIIMjdnGD/QOIYPVGGHR980GKE8nwQXuTZ+yynQVir6pgMiy0J1NDxYwOMHX6cn3rGJFf7VKLRKhuuLI2DW2zPvPlArB7kX49WBCVFrr4u7AbY2Z64sLJRI0+FT4zvk6R8mChQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=Je5ZH6fxyEMpdU377mEtLmT9Nve4QKMam4DdBaSSODk=; b=Ck2o2JOCrnOxa0F/vQLnms3WRlnqOb9/BLYGEXiTy9Xg1BpWizNBmzXRu6rPN3Wuh/CVZaXx0i867IBg3TAHz7vRmT9HbTXC8fIcI0Uc/VSOefI2E4VRq2bCl6iYhCTSP8PZVI0DZ/bc1095V+jZICfqmLxxwwNUPK84qZITpWie9VOxU7AOPe3yFiDYbZlff2sa6ngWfujKPvqJ9mjRtIMIM68rSEnS1wf+fBqY2/pBBfUb6/z1CvKD+HCMBMb8n/OIBsR2clAowSHhL+PPYfTSBl/noufc1JsMpII4WGgm0GriPoFDUVpaNsf6culuy3E1WLMFziYNCOVJ/hWejA== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Received: from HE1PR0402MB3497.eurprd04.prod.outlook.com (2603:10a6:7:83::14) by AM9PR04MB8083.eurprd04.prod.outlook.com (2603:10a6:20b:3b5::15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5857.19; Sat, 26 Nov 2022 13:15:08 +0000 Received: from HE1PR0402MB3497.eurprd04.prod.outlook.com ([fe80::62bf:d98a:f54a:2852]) by HE1PR0402MB3497.eurprd04.prod.outlook.com ([fe80::62bf:d98a:f54a:2852%7]) with mapi id 15.20.5857.020; Sat, 26 Nov 2022 13:15:08 +0000 From: Geliang Tang To: mptcp@lists.linux.dev Cc: Geliang Tang Subject: [PATCH mptcp-next v3 2/4] Squash to "selftests: mptcp: listener test for userspace PM" Date: Sat, 26 Nov 2022 21:15:20 +0800 Message-Id: <8b35483cbb565d772293c551740a323fa741f989.1669468340.git.geliang.tang@suse.com> X-Mailer: git-send-email 2.35.3 In-Reply-To: References: Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: SG2PR02CA0013.apcprd02.prod.outlook.com (2603:1096:3:17::25) To HE1PR0402MB3497.eurprd04.prod.outlook.com (2603:10a6:7:83::14) Precedence: bulk X-Mailing-List: mptcp@lists.linux.dev List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: HE1PR0402MB3497:EE_|AM9PR04MB8083:EE_ X-MS-Office365-Filtering-Correlation-Id: b936708c-3e84-4a91-7f33-08dacfb03d78 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: QsozfYF+xM2PUzotwNfJuqPN1wjNdNlq0is5gk01CRwaQXRQmroQxfBu3QmI792CAGW4MCKOsmvb4N0PIn0/u6XdWBz7r5SUOs0irVP4Ptg2dl5Zx3uYbMv7x+0waja0nMgt8zoRb4MiWEs0+F9a08Ta6nvdbVNGy15qn5+rms+rEwsEV5nCo5bzbSXdacmo9EKf0apl+PXwscW8zWStwOudLOuXHeQm/KadDwk5edZf2ULheSURtv5/L/+yZKcr92uBQE7gXF8Vdyyyo4sE8Puglob1qOKwy9jf/ObdswayPUX1RahwSLYC9+3pikVqbTl7Z03M3fenbr+bM1Ti5QKV+kO5HPBaWkZzFYdMgWb/Z0qda6Mjfjr6nqkJCJg1e5v+eHY3yywMu8t65L8GGyS/UcE5W22KeYW1BHrcwBn0CtszOxmtHVJG1DBarIo4gRP4GRLwwsbI0t1npY+/MWbZwi0GGtP5maRLge3yRtNUf1pYiLjnST/AyiM35MAgjL4/F9abvAp4KMQU6kdA//Pv7OPqxQr8c76nKzC2vRrqA4SUwdH3P98yB3u+k8LZ4WI3LJ8PTK2C43k8zPKnVDNbwds6J0zciGeEv3g1gV0hK/luEoXz+l1bT14CpgRimpbpGmXa2XVjUIlC8ntlNQ== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:HE1PR0402MB3497.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230022)(366004)(136003)(376002)(396003)(39860400002)(346002)(451199015)(6512007)(26005)(36756003)(41300700001)(4326008)(8676002)(66476007)(66556008)(66946007)(38100700002)(86362001)(186003)(6506007)(2616005)(478600001)(107886003)(6666004)(6486002)(316002)(6916009)(8936002)(2906002)(44832011)(83380400001)(5660300002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?YpbI9rdxf5Gg2pfY9Qa53UoKva9ebvogJc1qxJl88NdGfdQlOGRgwk91/4HE?= =?us-ascii?Q?YfuFz3zF12jYUmYOWwWNyeATx0FtHFoXjBvkW2Xd7IpYdwBy+q/q5j7j0cK0?= =?us-ascii?Q?JYIY9Yk1lFGLLDmrpDpAcO3XJz32lRCSyHNjfKlts0ouomk8jnH12Z3YptNA?= =?us-ascii?Q?9TS+9d4kcJBTu3I4aVvAbAu95yInR1dmD0WyaWm0+DXqk/uVYx1ZWIKUD8Qb?= =?us-ascii?Q?21dXltxw+qatT475NyntkjeKq3avOyuKXZr3i/kHuCLFMqsmXDwd2B4HZ14Y?= =?us-ascii?Q?1OmNWeGVvgsigV3Z9J0SwMdrbM9C9bTqALZdPr/ZQCbADQ/WzQ0PDJgYFWeX?= =?us-ascii?Q?QpFzlb/n0AjQKVyUZr8+RESgpXlrXSpBEbxiZyz/gFM6hb+g9o764VJxXxdq?= =?us-ascii?Q?P2D6g2dsNSqW1yS2r4sLxKTukSQ0vvoPZWCKxJe3YM7Hr+X6/uPUhH4N4ZdF?= =?us-ascii?Q?VB64/JaXOs0ehnZptNV5bzjbtFQhEO78SiCurUU9vvyM05ZJ0r72+yLCYxcY?= =?us-ascii?Q?rbpY+BqiOtV/hGzOdTNHlADzlv8xrA5WBGx6Odque625i81UOYlBwz6KPGXP?= =?us-ascii?Q?vI3eQO213m5gowC0AACKGZ/ezjD3f6224T98/+2HUWDwSW3oGeszzDUmzmgc?= =?us-ascii?Q?yi3fkipgjtvT8ET2WQPEViUOUizC9iEu63e3nrebfD+GzynySEUjnaci9zw5?= =?us-ascii?Q?eSAaZK+JCMF2mrrThSiU73hcFo5Vy49M7LtE2sFLZoEhoOCw3mRgksDPv0gd?= =?us-ascii?Q?CVPV1235ZALNsdPQAqZWfxUCQg9cd+dDT6RpIfGfBoA4MX4NKAz62vHZ29XD?= =?us-ascii?Q?DWqY4duWdUcdEWLz2uWMfqGGur3SKzrPOhbFv8k96hhw4hFIWM6y4dwc2fqw?= =?us-ascii?Q?WK/mM1SEwyL7nmotb02vpqC/gtCG2MLUKAe05K0ff2Of8DSrLGaJyrlQyEUh?= =?us-ascii?Q?IugC/N0VWl08HvPeMFDs0G3wNovtDNeSyGXs2Y1ZjYDIoq7rLHJ+D0VXqb2H?= =?us-ascii?Q?Hi+32Ct857AcbmN9IkDfm11U5nOjpoajQQNKxe7fWZpEZYjsXPjWYci+WZLt?= =?us-ascii?Q?YW2BKYn52CEoQCPtqapaUULfDcB8UPbgwEFeJ+0tO3J1Ppc+97Y41wjsEHef?= =?us-ascii?Q?XCMfCCKUm8GCrUFMyxG2EsZugtIWrRyaxCIEevSqiKhpXshYN0nqySQP6cMW?= =?us-ascii?Q?2hFnaPZGdt0lR3InvqDr7Rk87JnXFAqmp5u54Ax9V0BetA5GMZUCgKbZstVY?= =?us-ascii?Q?/LWjvtpK4Jt9l++EZohQwTNgigBO5A4O9eMnYlLAxrWEjtmDobTHck0RkSkH?= =?us-ascii?Q?6V+DfaFnqE3JL4w5gbNdHMWbnfEeW4dC5yz2keAbJOxM31spDeMRGpVWtjoG?= =?us-ascii?Q?MKB8QhwSWL9rllw9+B7Pr8Z+wMtoolO/kF8pcWGcKzvvpTz29vn7sL2DSJ0e?= =?us-ascii?Q?ZaNno6RUevmo96WSnq+T2NKXZWfcqvSaz3kxxf0gMvXMlycJULfysvs09qAl?= =?us-ascii?Q?BwXLIJxTzra5fKT69pdkK2HZg2toAFlEf8qF2dom1gdVnNKmBnAteEj5CWaI?= =?us-ascii?Q?PXYGkpF/+0HuRPWzE0KaTbcZjdxbY96IJM7gTkfQ02gwzDUTJbp8BGOCQEUE?= =?us-ascii?Q?oQ=3D=3D?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: b936708c-3e84-4a91-7f33-08dacfb03d78 X-MS-Exchange-CrossTenant-AuthSource: HE1PR0402MB3497.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Nov 2022 13:15:07.9940 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: Hv0/hxgaoC4DqUeg/s/fiAzvqyg6tWeYbODgJMf6TCptJprQOkhoczyoJA3E+erMGh8G0nG3G3bqQ6iC/aPeSw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM9PR04MB8083 Content-Type: text/plain; charset="utf-8" Do some cleanups. Signed-off-by: Geliang Tang --- .../selftests/net/mptcp/userspace_pm.sh | 24 +++++++------------ 1 file changed, 9 insertions(+), 15 deletions(-) diff --git a/tools/testing/selftests/net/mptcp/userspace_pm.sh b/tools/test= ing/selftests/net/mptcp/userspace_pm.sh index f21da6119ad8..d7e8389dc192 100755 --- a/tools/testing/selftests/net/mptcp/userspace_pm.sh +++ b/tools/testing/selftests/net/mptcp/userspace_pm.sh @@ -808,7 +808,7 @@ verify_listener_events() sed --unbuffered -n 's/.*\(family:\)\([[:digit:]]*\).*$/\2/p;q') sport=3D$(grep "type:$e_type," $evt | sed --unbuffered -n 's/.*\(sport:\)\([[:digit:]]*\).*$/\2/p;q') - if [ $family =3D $AF_INET6 ]; then + if [ $family ] && [ $family =3D $AF_INET6 ]; then saddr=3D$(grep "type:$e_type," $evt | sed --unbuffered -n 's/.*\(saddr6:\)\([0-9a-f:.]*\).*$/\2/p;q') else @@ -816,8 +816,10 @@ verify_listener_events() sed --unbuffered -n 's/.*\(saddr4:\)\([0-9.]*\).*$/\2/p;q') fi =20 - if [ $type =3D $e_type ] && [ $family =3D $e_family ] && - [ $saddr =3D $e_saddr ] && [ $sport =3D $e_sport ]; then + if [ $type ] && [ $type =3D $e_type ] && + [ $family ] && [ $family =3D $e_family ] && + [ $saddr ] && [ $saddr =3D $e_saddr ] && + [ $sport ] && [ $sport =3D $e_sport ]; then stdbuf -o0 -e0 printf "[OK]\n" return 0 fi @@ -827,20 +829,15 @@ verify_listener_events() =20 test_listener() { - local evts - evts=3D$(mktemp) - # Capture events on the network namespace running the server - :>$evts - ip netns exec $ns2 ./pm_nl_ctl events >> $evts 2>&1 & - evts_pid=3D$! - sleep 0.5 + # Capture events on the network namespace running the client + :>$client_evts =20 # Attempt to add a listener at 10.0.2.2: ip netns exec $ns2 ./pm_nl_ctl listen 10.0.2.2\ $client4_port > /dev/null 2>&1 & local listener_pid=3D$! =20 - verify_listener_events $evts 15 $AF_INET 10.0.2.2 $client4_port + verify_listener_events $client_evts $LISTENER_CREATED $AF_INET 10.0.2.2 $= client4_port =20 # ADD_ADDR from client to server machine reusing the subflow port ip netns exec $ns2 ./pm_nl_ctl ann 10.0.2.2 token $client4_token id\ @@ -855,10 +852,7 @@ test_listener() # Delete the listener from the client ns, if one was created kill_wait $listener_pid =20 - verify_listener_events $evts 16 $AF_INET 10.0.2.2 $client4_port - - kill_wait $evts_pid - rm -f $evts + verify_listener_events $client_evts $LISTENER_CLOSED $AF_INET 10.0.2.2 $c= lient4_port } =20 make_connection --=20 2.35.3 From nobody Mon May 6 16:11:30 2024 Received: from EUR03-AM7-obe.outbound.protection.outlook.com (mail-am7eur03on2087.outbound.protection.outlook.com [40.107.105.87]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id EED2B17CB for ; Sat, 26 Nov 2022 13:15:16 +0000 (UTC) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=YkNYFsa5OAxpZoZM6PvNtzmrDbjAPaFUn+04ffytETVrqmLv338CtVdpolgoklOtE+ll9E1FdJdpwhBr3TNoZrg+bEh0MZGDrDG5VQ1Pah5+hU1bAk2DgMK8z6VwQBWPJQygoQDGQ7hxEv1X5MHlPjH3J5mUZn7qsR/YyUcWYIsZI8CgAy+yA73/PPQl6kuZ7u6DkIc50BISMGI2iF1CvHzIQT738MqAIg7tgixVC2tYnAV2D7eyr7dI2/MpFgY0CIUsawSt4fsfuzemA81AENhRo3ZWniMS5+yXyaZAhXgkyEIZq5RhcobLMCqRrRBXalsY4TtjYxexodRLvALM8A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=0FnrOnAd+MuPiONfHMAZVtYzQlpreuCv8AVDywY9dKA=; b=bfBjV5WIsYARMT+RSQeQE4/OuUSSNv0P/7J3hvvXY8C2v+ZRZr+4YswfSUp6/+sW9vuS8QLJHLjxtb/rDBdZQU7U2GMc3GKvNKw6D3lyuhrwSdK2XihQRLWCmAAflwr0d8tEYMo4LyS5W3mCgQ4hLuUwpEYWn0Zz9yBhJ9UTJAmnOKTB7HXlUhNix4PUHinYV5pUVMY/iLu9Vtk7rUCmX9l/l0GCOGZUPrXEMJlS2rfRLHoNSuu0wzHfKxTKNHXwk/W1Wv//0AZFfOCaR0iicH3gWnKphfgwi6bBfCO2MjHId3Ryq76hFsxLQ0r+Dsu1ObL8KGbMDhemCq0ccuwMXQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=0FnrOnAd+MuPiONfHMAZVtYzQlpreuCv8AVDywY9dKA=; b=rRuS9lWNx1b14L4EfXrFoELDiwLNLSVRNsS3s7fP18/52vA3W7no96qkNKgj2ETmscLW4dtrAZncWoVRxNAOcyPnsmwVGo9fZRTsxkMdtMxzxJXuF//1UbbylXq6Lg+vAd1E31+ANAfvAPEYF5scWOElYZCoorKit79r+7zNSY+x2vcuaibrl8CZ+RkW7e4j0exugAomt6UT+sd3m3sWbr+xPDgTj1pXBUtwfPJaTILDpwO+ZL3a70i35eujfvpZ1BZ6CyiHNWqQtSrtNos2+btogHYpPeOvSSlvuLHrD/A4j3CshbjubAm2RtXvch397dl/dwXZOgus5WeChDpXTw== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Received: from HE1PR0402MB3497.eurprd04.prod.outlook.com (2603:10a6:7:83::14) by AM9PR04MB8083.eurprd04.prod.outlook.com (2603:10a6:20b:3b5::15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5857.19; Sat, 26 Nov 2022 13:15:14 +0000 Received: from HE1PR0402MB3497.eurprd04.prod.outlook.com ([fe80::62bf:d98a:f54a:2852]) by HE1PR0402MB3497.eurprd04.prod.outlook.com ([fe80::62bf:d98a:f54a:2852%7]) with mapi id 15.20.5857.020; Sat, 26 Nov 2022 13:15:14 +0000 From: Geliang Tang To: mptcp@lists.linux.dev Cc: Geliang Tang , Paolo Abeni Subject: [PATCH mptcp-next v3 3/4] selftests: mptcp: make evts global in mptcp_join Date: Sat, 26 Nov 2022 21:15:21 +0800 Message-Id: <35c9ae9a6e487e0e1a6147d0f273a73c62784483.1669468340.git.geliang.tang@suse.com> X-Mailer: git-send-email 2.35.3 In-Reply-To: References: Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: SG2PR02CA0006.apcprd02.prod.outlook.com (2603:1096:3:17::18) To HE1PR0402MB3497.eurprd04.prod.outlook.com (2603:10a6:7:83::14) Precedence: bulk X-Mailing-List: mptcp@lists.linux.dev List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: HE1PR0402MB3497:EE_|AM9PR04MB8083:EE_ X-MS-Office365-Filtering-Correlation-Id: 5ac50fb6-f7df-446f-7ac9-08dacfb04134 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: +W1ZEHFg0nirLQ1ylFWrH0ch6k+vDeMvsyq2kDRGQGB9Jpt/MwwkeN3mOuTinMUewBLbCy4rS/1TPv+ravgNEKzakk8pfmglURCGa7AV4uHN4+KfmW0dJECzw78z37qtyO5rn2ApI99uJ8yTSGjiRk8LvfphmI4mRqw8QQ607ZfvyMo1h9w5uYL/lmkoYEBCf5cq9xegCfqvHHdBQcPcAxFiaNi5qo/UktiJWD+fLz8xq/0xPuAPm9AiukUmuzyO3e9bDn1FBrLN8UhS3hQ7zzje/gtvEwEkI7IsdtHOI8+tqUNdfCpzpc16nZV6zGC0KHrR669sxbwuPNsSclJbask/Xyd/MbhF4/CdbgdC58SdGPmoMpSmKP9nMYEsuygRzmq5EDPmeu/mKqAlyrkkQpEBlpbXI0YQacWkjOVjV4gQmvOJnHrWBTD5L6TzWwFMrvkaVeYB4fjT/1GWgCKM7IeVX5spNjnWFpU5AQQ9kF5D5E+Wb7lZX5NSS3LnFDUMUzDPuW6iOEttwWHSVTaBHZVIVKC4mJsf8fCugsr3Y32aVEwDxnNQ2U4SByIqHqa9hwZqh+agt2VkLdLUKhrLHMpMZilu8RjS2Dpx63Exvb9wE0xV9ogHU8CvFx2zAlY2BiLrvvilUgbhqROw8GSDjw== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:HE1PR0402MB3497.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230022)(366004)(136003)(376002)(396003)(39860400002)(346002)(451199015)(6512007)(26005)(36756003)(41300700001)(54906003)(4326008)(8676002)(66476007)(66556008)(66946007)(38100700002)(86362001)(186003)(6506007)(2616005)(478600001)(6666004)(6486002)(316002)(6916009)(8936002)(2906002)(44832011)(83380400001)(5660300002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?uPTAQEH34tmoT057CPs1h+pjFDU4TmyRxjGHQvvMcg/SNKLh2B3WG851Yr3p?= =?us-ascii?Q?j8KfqI5cEZYsJOFErTapUyVCNHaMjWXryuAtC7kubKQqGZZa5VR7i+9sQUYq?= =?us-ascii?Q?Z9WtgMxP9b8zI2uNdHodTStQmCuHrhIJrtSK2LWoPYD4KoXqtIQJEhf4rWFv?= =?us-ascii?Q?XySV0lYlCHKCVXcmgGXVHaMvSELs+ZAMS+Z0Us3VxCl00rBVXegzXS78AAeE?= =?us-ascii?Q?qLe5Cs8qrxOQ2FyU7GoWuDgO5/VnWlfNoR0gcHLpuL6up7hGgMKBTWBNdJB0?= =?us-ascii?Q?c2etJzQBt/cktVdu9iGKaG0TxbeRCfwqpzhoSNJPjyaaSgvXS+SDV6U1rdiZ?= =?us-ascii?Q?bQocjIihwwtr9S/aPwl/MH8zP4qm1gd+ykanRqqG2d2QyDCIaHPj5XdJ/n/r?= =?us-ascii?Q?Prpan5HRPqE//Bz+pIcaM7bCi7SkYhcQdU6Jz5p3LxTHB39TLVodKcL15ZiC?= =?us-ascii?Q?PQZd5awJ1RzYmY/sqjw/SqjUXZRsr7RZ9yDYzxpYudyfDz/JQaXxdLXrHg4S?= =?us-ascii?Q?anWANI0MHHbJCbX8lRaONQ5Gcn9vwiDUN17IDEykvgt3fqopjvlUSf5A+Co4?= =?us-ascii?Q?5oejuJBHagtOgErvh4CZd7FzEMMl1yJjbQMEzoPbx0fc/tWDGy9aiaMdQXZl?= =?us-ascii?Q?gsBsoSgeP+8fRDJZGMQe+H4whUDcQ4Uk6m/8guz6CU7wOvmuacGyf2OnwUcM?= =?us-ascii?Q?V86zs1cnKfvL72a8z8C/7GaBOuebOssheqDwiY97KG+yICtfz3IC0yCxKIYV?= =?us-ascii?Q?ImVJTtW46xbyfDkPPK0ALxL3figeBrKLoWJ8fvWUqAOXiNYlBd309S6HiebZ?= =?us-ascii?Q?woxaKQd2hmwsuPr6k8Pcy4cxAURIp2SO6BFru0NGF1njp4tNZxDGIFx/qJkG?= =?us-ascii?Q?bSp6gqjiuA3OhlmZYkP+UpjweK8MM+wZbI8vndX+/RDb6/80KqSRhS4LUG65?= =?us-ascii?Q?sSFdqEHxnvy+Hin2bUgfYQvmlGOM2K9OjXEcLabRvQsCEeFGGA8+GrM9TCpN?= =?us-ascii?Q?+r+F5V8oeL6dXHI/bDrK0udGIH/ZBEnMR4Ua6LSEo5kTue24anvaYo6kRNHF?= =?us-ascii?Q?mBdokSbk3U/yDF2T/++ImGqazG8AxdVguf2z2VW1jQYqVYsCPTUyh6+bnhBU?= =?us-ascii?Q?2wYIKJQtg6mAw6Hvn5TF7mkzzl0BdkRSUECOKA4fy3IXQoTr9I67lQ/MjBXZ?= =?us-ascii?Q?1bG+bIWSV9Sq0DzP9KZQPmhis/zIVCrTsdXdReVPq9+gUVIyXQ1TvKaCC/Ho?= =?us-ascii?Q?0zryqPYify8AnpcEugmKYb37cZC4NNMpBpXzC/qeaTjJHRN0bHOEHYlbLpge?= =?us-ascii?Q?1pYONlNb54lLDl1kLzs9KFYzOYok5aFQjxwYPHC2H+tQfJ0BVCaaoQyXfgGM?= =?us-ascii?Q?SMiSEgN8umA114TnDWTVsNr0h0czDAavnMa6YXcD7vDx5MHHOfwEA+LNnzkV?= =?us-ascii?Q?LhdMdDnaicOGsiCatrdldQqMWQEAY9Q5zFp1KHXYfBo/AJU8fIwadFGUCa9A?= =?us-ascii?Q?ki1LVScgJxwcCxexx2gs4+n9ZsjSXpIsHP265CH2Rq6AabBOdpgiICNoiQMB?= =?us-ascii?Q?SIlLvYnuePS3/XrGzS3N5wujuVqHv6Nfz3gUB9THasO6ajmr16nhquZacorq?= =?us-ascii?Q?hQ=3D=3D?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 5ac50fb6-f7df-446f-7ac9-08dacfb04134 X-MS-Exchange-CrossTenant-AuthSource: HE1PR0402MB3497.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Nov 2022 13:15:14.4623 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: vtTFV+ouR0G5l1xp2hYRhvimPJSw2UtonvEugI08SKgRfYRpwRwgFurJSC4GS1XIC4H+mO+huy9MSRhNOwS+gw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM9PR04MB8083 Content-Type: text/plain; charset="utf-8" This patch moves evts_ns1 and evts_ns2 out of do_transfer() as two global variables in mptcp_join.sh. Init them in init() and remove them in cleanup(). Add a new helper reset_with_events() to save the outputs of 'pm_nl_ctl events' command in them. And a new helper kill_events_pids() to kill pids of 'pm_nl_ctl events' command. Use these helpers in userspace pm tests. Suggested-by: Paolo Abeni Signed-off-by: Geliang Tang --- .../testing/selftests/net/mptcp/mptcp_join.sh | 52 +++++++++++-------- 1 file changed, 29 insertions(+), 23 deletions(-) diff --git a/tools/testing/selftests/net/mptcp/mptcp_join.sh b/tools/testin= g/selftests/net/mptcp/mptcp_join.sh index 89a30225bbd7..6c4dc890b71e 100755 --- a/tools/testing/selftests/net/mptcp/mptcp_join.sh +++ b/tools/testing/selftests/net/mptcp/mptcp_join.sh @@ -26,6 +26,10 @@ ip_mptcp=3D0 check_invert=3D0 validate_checksum=3D0 init=3D0 +evts_ns1=3D"" +evts_ns2=3D"" +evts_ns1_pid=3D0 +evts_ns2_pid=3D0 =20 declare -A all_tests declare -a only_tests_ids @@ -154,6 +158,8 @@ init() { cin=3D$(mktemp) cinsent=3D$(mktemp) cout=3D$(mktemp) + evts_ns1=3D$(mktemp) + evts_ns2=3D$(mktemp) =20 trap cleanup EXIT =20 @@ -165,6 +171,7 @@ cleanup() { rm -f "$cin" "$cout" "$sinfail" rm -f "$sin" "$sout" "$cinsent" "$cinfail" + rm -rf $evts_ns1 $evts_ns2 cleanup_partial } =20 @@ -320,6 +327,18 @@ reset_with_fail() index 100 || exit 1 } =20 +reset_with_events() +{ + reset "${1}" || return 1 + + :> "$evts_ns1" + :> "$evts_ns2" + ip netns exec $ns1 ./pm_nl_ctl events >> "$evts_ns1" 2>&1 & + evts_ns1_pid=3D$! + ip netns exec $ns2 ./pm_nl_ctl events >> "$evts_ns2" 2>&1 & + evts_ns2_pid=3D$! +} + fail_test() { ret=3D1 @@ -473,6 +492,12 @@ kill_wait() wait $1 2>/dev/null } =20 +kill_events_pids() +{ + kill_wait $evts_ns1_pid + kill_wait $evts_ns2_pid +} + pm_nl_set_limits() { local ns=3D$1 @@ -673,10 +698,6 @@ do_transfer() local port=3D$((10000 + TEST_COUNT - 1)) local cappid local userspace_pm=3D0 - local evts_ns1 - local evts_ns1_pid - local evts_ns2 - local evts_ns2_pid =20 :> "$cout" :> "$sout" @@ -753,17 +774,6 @@ do_transfer() addr_nr_ns2=3D${addr_nr_ns2:9} fi =20 - if [ $userspace_pm -eq 1 ]; then - evts_ns1=3D$(mktemp) - evts_ns2=3D$(mktemp) - :> "$evts_ns1" - :> "$evts_ns2" - ip netns exec ${listener_ns} ./pm_nl_ctl events >> "$evts_ns1" 2>&1 & - evts_ns1_pid=3D$! - ip netns exec ${connector_ns} ./pm_nl_ctl events >> "$evts_ns2" 2>&1 & - evts_ns2_pid=3D$! - fi - local local_addr if is_v6 "${connect_addr}"; then local_addr=3D"::" @@ -982,12 +992,6 @@ do_transfer() kill $cappid fi =20 - if [ $userspace_pm -eq 1 ]; then - kill_wait $evts_ns1_pid - kill_wait $evts_ns2_pid - rm -rf $evts_ns1 $evts_ns2 - fi - NSTAT_HISTORY=3D/tmp/${listener_ns}.nstat ip netns exec ${listener_ns} \ nstat | grep Tcp > /tmp/${listener_ns}.out NSTAT_HISTORY=3D/tmp/${connector_ns}.nstat ip netns exec ${connector_ns} \ @@ -3023,22 +3027,24 @@ userspace_tests() fi =20 # userspace pm add & remove address - if reset "userspace pm add & remove address"; then + if reset_with_events "userspace pm add & remove address"; then set_userspace_pm $ns1 pm_nl_set_limits $ns2 1 1 run_tests $ns1 $ns2 10.0.1.1 0 userspace_1 0 slow chk_join_nr 1 1 1 chk_add_nr 1 1 chk_rm_nr 1 1 invert + kill_events_pids fi =20 # userspace pm create destroy subflow - if reset "userspace pm create destroy subflow"; then + if reset_with_events "userspace pm create destroy subflow"; then set_userspace_pm $ns2 pm_nl_set_limits $ns1 0 1 run_tests $ns1 $ns2 10.0.1.1 0 0 userspace_1 slow chk_join_nr 1 1 1 chk_rm_nr 0 1 + kill_events_pids fi } =20 --=20 2.35.3 From nobody Mon May 6 16:11:30 2024 Received: from EUR03-AM7-obe.outbound.protection.outlook.com (mail-am7eur03on2062.outbound.protection.outlook.com [40.107.105.62]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id CAF8C193 for ; Sat, 26 Nov 2022 13:15:24 +0000 (UTC) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=d7nr7qxlCpUfz/elVdLplGfAYovmzjH6w/QHpanRrhKME6bXIL8OU3xaHhR/X5yRFbn+9yGRwVsZmv1IHc+caxri70ps7OFfqPgo9t+YYnt4sFy/Wt3GPVwqjepO5V3Ch6jVPZr4aFaF65f0fA3n5fNNsefF455mGB0TnaZALkY04BoUvIe9AaaFeCN3r0hoPQWTkSYTZf+mLMHPfVRol9sHDh5dctwMdd7KRmMOatmhtfkeuubkfXI4rrymzDqENZeoogIuE/nv1xd9iuqDxvheFQXWY6xyNJDjrpIFP2c2WaV6vNo+K7AYKx1BcsI7K0erM2IeTCuFEM2lM/TyTQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=V7b/EQtAHglTxvI1FOcRGsg5nmMJHHBqRb5LiTGvwcM=; b=UUMf7YxH+4A1WGQrjm5amQlcUGHTelLYhm0mk5bEEkpIjLH27Z/ty+nbJtNOAxiC5GfELedhyXT51CU6ofQSkuANSge0PQf+tKn5cDlAMFFGHdezmNXCy/AKc9ScHNQlUHIHcagRnwGdrc7esQaHob5YIVPAVZP60k9+rWK/cTC5KpMn2MOQALb84WMEHP3U4l4zpvynkpZILS6odUpav6MWZ7FBXXzp56qj9yUeawH1gVrBGDloKyeAB3A6bjhTVjkEOvRdkZEvn8aB8U4CVJxkR1wkqS9WgYJMo2mG+hoIL65KHBgcVgisRPkFz+ik3n6dqJ3BdRScXlddtRSTKg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=V7b/EQtAHglTxvI1FOcRGsg5nmMJHHBqRb5LiTGvwcM=; b=reTDSxfR8LhoObM9C5m/SUAJxUGqq8PAPjEDiE5LBncsc+IByw5fScbch3JpgyvAUie2wFvPwOoJINLERutdaOstEY5ZfD1PyBHDjZ4dUGl2SgW0wJl+kss7SRhPKV2LxMcWn8IABrOswl9ZtdKfthuEW2kmlwxUmey31s+YJNisPVsojXxSu/OdXtUtnlNxHasnaTpMv06wrs2X7/3tqY2JfjDgIisAGdw2w5qdVI5/9RWMVHKlbmoO3ueRGbLZaE3EUvXvreoMs2dium2eNIazBACFlmgoNJeIJdYjAZgaNSAC+wqF4PC526fEt/6xtVBP/U89NLnBM9Euqjl6PQ== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Received: from HE1PR0402MB3497.eurprd04.prod.outlook.com (2603:10a6:7:83::14) by AM9PR04MB8083.eurprd04.prod.outlook.com (2603:10a6:20b:3b5::15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5857.19; Sat, 26 Nov 2022 13:15:22 +0000 Received: from HE1PR0402MB3497.eurprd04.prod.outlook.com ([fe80::62bf:d98a:f54a:2852]) by HE1PR0402MB3497.eurprd04.prod.outlook.com ([fe80::62bf:d98a:f54a:2852%7]) with mapi id 15.20.5857.020; Sat, 26 Nov 2022 13:15:22 +0000 From: Geliang Tang To: mptcp@lists.linux.dev Cc: Geliang Tang Subject: [PATCH mptcp-next v3 4/4] Squash to "selftests: mptcp: listener test for in-kernel PM" Date: Sat, 26 Nov 2022 21:15:22 +0800 Message-Id: <35f7d90c998235855500e6d95dbefef988cd2bf3.1669468340.git.geliang.tang@suse.com> X-Mailer: git-send-email 2.35.3 In-Reply-To: References: Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: SG2PR02CA0009.apcprd02.prod.outlook.com (2603:1096:3:17::21) To HE1PR0402MB3497.eurprd04.prod.outlook.com (2603:10a6:7:83::14) Precedence: bulk X-Mailing-List: mptcp@lists.linux.dev List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: HE1PR0402MB3497:EE_|AM9PR04MB8083:EE_ X-MS-Office365-Filtering-Correlation-Id: 34783c25-6384-46eb-619c-08dacfb04626 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: ZIs5Ohu3fBm4XOpETrYGiWabt8uLProE8A/8TPbRC1slyc0LxL+8h86n2IMXl5/N0Iplh2i+qLq35YlOaFdIXTNAG1e/5uzTbvQ/xNCqMIWulEhAQN+8fcC97YEmVhni2msc4oJa43jhgFbEnarD1epG6C8fys/8mmOx8RRzM3Rnjj6RlHF9P+kJv0sTz9gU2VBd3x8TJ2gYhR6vZQK3IPv9DspUKQf52Im/BqSDCCPFujl8Iun1r13Yt2kMvLFpIfJrWgiSm25u3r3cQMMCADyBZYLw87wA2GQ3ZnMMrcz7tmqq79PFu+rrFpYaCp4hbZLJsjSStuKd+ZnGiAkkTEZJ4h/CJHcn0sAeSyrK/JsLrvxfAWbLVF6ZxWJECUjUUyx6/cLhSo1kHOdVv2mK/LAaSPpet3HR/kxcIbGg/5k3OBeX066MWtoTMaCEwQokaZwXrd70OGTS03ze1XvqyFlU8MUiAxedvzOPRUrVx7Oh04KaaQW30BHwCm36NTaO4dE9puG//B2XpnWyRobFvTcXh9dH9eFdbTm0eNGnTxO8ZvDRE30zsjMO+A+6Kkr6iwipWLggH4YdXLqYsnb/sRMlH9zKKbp5LZhHkwCKMSdYuUFVohFHQcbj1Nvu6OzWipQSjR5D972jttj+DUlvEw== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:HE1PR0402MB3497.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230022)(366004)(136003)(376002)(396003)(39860400002)(346002)(451199015)(6512007)(26005)(36756003)(41300700001)(4326008)(8676002)(66476007)(66556008)(66946007)(38100700002)(86362001)(186003)(6506007)(2616005)(478600001)(107886003)(6486002)(316002)(6916009)(8936002)(2906002)(44832011)(83380400001)(5660300002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?hWvIJ35IOt6T8nwFzKXpXxSCumPsDC9fe6Dfi1Kq2r8/682QV0MaKS+JwYht?= =?us-ascii?Q?xo5MONWN1bezo6o8JwGSQzxERdd118PE4hiXJXi6yfumJLT0MDMxuzUcREq3?= =?us-ascii?Q?vWebngchl8kabXhIVhKssS+8V74UNjbftY+G1IRmPDbVqYfw2fCGOgEpZ31R?= =?us-ascii?Q?aGGRmo2U8qCebempwIdRKvIVePRZupCym1hsRdSB9JnRoAleQqHbBnSqkdsP?= =?us-ascii?Q?0IrDGhUaVnm7W+pnOtP6lou8ZBqxRw9p+m7Kn5wG9uAb36yo3C67QHcKaV9M?= =?us-ascii?Q?mImbaAIWxySBaev2TBJjsrQN3pTsd1KyxtfVsvaR129Hff9hW8PXxcF/xRd1?= =?us-ascii?Q?caUd7N+oUojvgOIrE3zs6fZx3pDMx/lBHsL5Lp+ZPoCCf4q7EpESqPhT3gJ0?= =?us-ascii?Q?b1rdpbPSX8R3vAeAvKb1tTALW9zugfDVOa5L7TJHWQO5Ul+A4XNT9ll7H143?= =?us-ascii?Q?3fU+mXQiFmsUjCSNTLbFI7u6G9U56p3Jady1hA/DyPKpql2RTJCKVXBrag9W?= =?us-ascii?Q?kFixj7q450iPKmTKDbFP3wFJJzOpOnXjCPb9K2miaNU7BCynfxvP+LnklHjO?= =?us-ascii?Q?z9egvsK5KGnoJU8qaRMahQNgaYdVzMIsepXr4/8CmXLBzQmMlzVt3WbvQnGc?= =?us-ascii?Q?hXzOsqngMz5vN3pArh5DUTKheK4GSz0p8xqsxkOFabPHm/Euocv8sPI8RWfG?= =?us-ascii?Q?r55hUi9iHm0Gkvr0j8oMlQF+ZXtj5BCVVk+l0PpA3g5yo4TLBcVIcBMygS8m?= =?us-ascii?Q?PQ1VZ50KNDT8qjTThTV2tKZTPrm1XhJQk0/wTRLnWcO6rv0Oj1WzFbqx6ipH?= =?us-ascii?Q?uy6oRHyipbbMnLxaI5J64YLKfZoHgC7BOjNG6Sn/uzqx6AMEFYjwiUNOtt7a?= =?us-ascii?Q?6AhK8mDV0O+xfif1rT6ai0wFzrDGvT8j/UGNtbwG7T/o/h4Kl+JL3six+WOs?= =?us-ascii?Q?oSx1CCCDub//V/zR+YIlI+QnzoDbjZd+QSVvOR7nlz2VvPtUhgWmszJmg8IJ?= =?us-ascii?Q?ZAHmoWih6RqzmyWCo/hc+7EnhGVZopi83fSm9TO1XT9EunGQyE1Bb7tXbCa1?= =?us-ascii?Q?nt4V9PDD4rDaeH9VbqQ8xjIWgbvi7woMEHsm9v0PKmwfggEgIxlExg7h9JA/?= =?us-ascii?Q?UzR+z6vpvcNhahYfhdFnZ/CAWB7o242wTulGI1A9wzvDUkhrJqllLj+HmyAc?= =?us-ascii?Q?BbRVpwBBy6TU2wbMA/CPR5H/XllyGausSbLT7lICQkVxEjpNfxmuT+Vu4+4j?= =?us-ascii?Q?2sLKdK46zZMKD5AXORDwQ5NprwmFYxy12fiYjfsre5/Why0Lk6WARwvXtwA/?= =?us-ascii?Q?zgjKZjxycz3R7OZTxw55hJwvEoNo2jZFYogCejNUrV7mk5/V49aDteCPq2xt?= =?us-ascii?Q?45rvYF02JF9NBrWcVCyGcgbyl+6oPQMQdbZChisF8wnxR0WYljNd80r4PagR?= =?us-ascii?Q?rGxvOSKdpe0oX7beeeRVvGIjtZJw4kCxeyRflmkFlGeVuMlNea0DxUfh/aL9?= =?us-ascii?Q?s3TOEZmgV7qi2zwzZ97RDPrNzgAkM/gTZF/pgt244y1MGk3YxU4osaIEp4Ng?= =?us-ascii?Q?2Z1uRUrj2DXwHqEqr1mY70kwHfSsiIlnMy50HOwJgZo8qh8Ag0BajYDA5+Bj?= =?us-ascii?Q?zQ=3D=3D?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 34783c25-6384-46eb-619c-08dacfb04626 X-MS-Exchange-CrossTenant-AuthSource: HE1PR0402MB3497.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Nov 2022 13:15:22.5866 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: CuVt2Ul2zZkK5HMs7yc4pZ+txA/B0BJHwXLQRa1hCnASba7to9T2rk9D37glqLcV99ptvNF9MzIiVqQCtfvQvQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM9PR04MB8083 Content-Type: text/plain; charset="utf-8" Do some cleanups. Signed-off-by: Geliang Tang --- .../testing/selftests/net/mptcp/mptcp_join.sh | 26 +++++++------------ 1 file changed, 10 insertions(+), 16 deletions(-) diff --git a/tools/testing/selftests/net/mptcp/mptcp_join.sh b/tools/testin= g/selftests/net/mptcp/mptcp_join.sh index 6c4dc890b71e..d11d3d566608 100755 --- a/tools/testing/selftests/net/mptcp/mptcp_join.sh +++ b/tools/testing/selftests/net/mptcp/mptcp_join.sh @@ -2545,7 +2545,7 @@ verify_listener_events() sed --unbuffered -n 's/.*\(family:\)\([[:digit:]]*\).*$/\2/p;q') sport=3D$(grep "type:$e_type," $evt | sed --unbuffered -n 's/.*\(sport:\)\([[:digit:]]*\).*$/\2/p;q') - if [ $family =3D $AF_INET6 ]; then + if [ $family ] && [ $family =3D $AF_INET6 ]; then saddr=3D$(grep "type:$e_type," $evt | sed --unbuffered -n 's/.*\(saddr6:\)\([0-9a-f:.]*\).*$/\2/p;q') else @@ -2553,11 +2553,14 @@ verify_listener_events() sed --unbuffered -n 's/.*\(saddr4:\)\([0-9.]*\).*$/\2/p;q') fi =20 - if [ $type =3D $e_type ] && [ $family =3D $e_family ] && - [ $saddr =3D $e_saddr ] && [ $sport =3D $e_sport ]; then + if [ $type ] && [ $type =3D $e_type ] && + [ $family ] && [ $family =3D $e_family ] && + [ $saddr ] && [ $saddr =3D $e_saddr ] && + [ $sport ] && [ $sport =3D $e_sport ]; then stdbuf -o0 -e0 printf "[ ok ]\n" return 0 fi + fail_test stdbuf -o0 -e0 printf "[fail]\n" } =20 @@ -2586,15 +2589,7 @@ add_addr_ports_tests() =20 # single address with port, remove # pm listener events - if reset "remove single address with port"; then - local evts - local pid - - evts=3D$(mktemp) - :> $evts - ip netns exec $ns1 ./pm_nl_ctl events >> $evts 2>&1 & - pid=3D$! - + if reset_with_events "remove single address with port"; then pm_nl_set_limits $ns1 0 1 pm_nl_add_endpoint $ns1 10.0.2.1 flags signal port 10100 pm_nl_set_limits $ns2 1 1 @@ -2603,10 +2598,9 @@ add_addr_ports_tests() chk_add_nr 1 1 1 chk_rm_nr 1 1 invert =20 - verify_listener_events $evts 15 $AF_INET 10.0.2.1 10100 - verify_listener_events $evts 16 $AF_INET 10.0.2.1 10100 - kill_wait $pid - rm -rf $evts + verify_listener_events $evts_ns1 $LISTENER_CREATED $AF_INET 10.0.2.1 101= 00 + verify_listener_events $evts_ns1 $LISTENER_CLOSED $AF_INET 10.0.2.1 10100 + kill_events_pids fi =20 # subflow and signal with port, remove --=20 2.35.3