From: Geliang Tang <geliangt...@gmail.com>

The removing testcases can only delete the addresses from id 1, this
patch added the support for deleting the addresses from any id that user
set.

Signed-off-by: Geliang Tang <geliangt...@gmail.com>
Signed-off-by: Mat Martineau <mathew.j.martin...@linux.intel.com>
---
 .../testing/selftests/net/mptcp/mptcp_join.sh | 38 ++++++++++++-------
 1 file changed, 24 insertions(+), 14 deletions(-)

diff --git a/tools/testing/selftests/net/mptcp/mptcp_join.sh 
b/tools/testing/selftests/net/mptcp/mptcp_join.sh
index 15b71ddee615..6782a891b3e7 100755
--- a/tools/testing/selftests/net/mptcp/mptcp_join.sh
+++ b/tools/testing/selftests/net/mptcp/mptcp_join.sh
@@ -284,14 +284,19 @@ do_transfer()
                let rm_nr_ns1=-addr_nr_ns1
                if [ $rm_nr_ns1 -lt 8 ]; then
                        counter=1
-                       sleep 1
-
-                       while [ $counter -le $rm_nr_ns1 ]
-                       do
-                               ip netns exec ${listener_ns} ./pm_nl_ctl del 
$counter
+                       dump=(`ip netns exec ${listener_ns} ./pm_nl_ctl dump`)
+                       if [ ${#dump[@]} -gt 0 ]; then
+                               id=${dump[1]}
                                sleep 1
-                               let counter+=1
-                       done
+
+                               while [ $counter -le $rm_nr_ns1 ]
+                               do
+                                       ip netns exec ${listener_ns} 
./pm_nl_ctl del $id
+                                       sleep 1
+                                       let counter+=1
+                                       let id+=1
+                               done
+                       fi
                else
                        sleep 1
                        ip netns exec ${listener_ns} ./pm_nl_ctl flush
@@ -318,14 +323,19 @@ do_transfer()
                let rm_nr_ns2=-addr_nr_ns2
                if [ $rm_nr_ns2 -lt 8 ]; then
                        counter=1
-                       sleep 1
-
-                       while [ $counter -le $rm_nr_ns2 ]
-                       do
-                               ip netns exec ${connector_ns} ./pm_nl_ctl del 
$counter
+                       dump=(`ip netns exec ${connector_ns} ./pm_nl_ctl dump`)
+                       if [ ${#dump[@]} -gt 0 ]; then
+                               id=${dump[1]}
                                sleep 1
-                               let counter+=1
-                       done
+
+                               while [ $counter -le $rm_nr_ns2 ]
+                               do
+                                       ip netns exec ${connector_ns} 
./pm_nl_ctl del $id
+                                       sleep 1
+                                       let counter+=1
+                                       let id+=1
+                               done
+                       fi
                else
                        sleep 1
                        ip netns exec ${connector_ns} ./pm_nl_ctl flush
-- 
2.30.2

Reply via email to