From 84007a272302b15e9cd139d55f8d026ca12b75e1 Mon Sep 17 00:00:00 2001 From: Florian Eckert Date: Mon, 15 Oct 2018 08:58:57 +0200 Subject: [PATCH] net/mwan3: enhance ipset status generation This change should optimize and speed up the status output generation. Signed-off-by: Florian Eckert --- net/mwan3/files/lib/mwan3/mwan3.sh | 8 ++------ net/mwan3/files/usr/libexec/rpcd/mwan3 | 4 ++-- 2 files changed, 4 insertions(+), 8 deletions(-) diff --git a/net/mwan3/files/lib/mwan3/mwan3.sh b/net/mwan3/files/lib/mwan3/mwan3.sh index e7a865b43..8c8f23523 100644 --- a/net/mwan3/files/lib/mwan3/mwan3.sh +++ b/net/mwan3/files/lib/mwan3/mwan3.sh @@ -1092,9 +1092,7 @@ mwan3_report_connected_v4() local address if [ -n "$($IPT4 -S mwan3_connected 2> /dev/null)" ]; then - for address in $($IPS list mwan3_connected_v4 | egrep '[0-9]{1,3}(\.[0-9]{1,3}){3}'); do - echo " $address" - done + $IPS -o save list mwan3_connected_v4 | grep add | cut -d " " -f 3 fi } @@ -1103,9 +1101,7 @@ mwan3_report_connected_v6() local address if [ -n "$($IPT6 -S mwan3_connected 2> /dev/null)" ]; then - for address in $($IPS list mwan3_connected_v6 | egrep '([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])'); do - echo " $address" - done + $IPS -o save list mwan3_connected_v6 | grep add | cut -d " " -f 3 fi } diff --git a/net/mwan3/files/usr/libexec/rpcd/mwan3 b/net/mwan3/files/usr/libexec/rpcd/mwan3 index a9b31f222..dc4eeb6df 100755 --- a/net/mwan3/files/usr/libexec/rpcd/mwan3 +++ b/net/mwan3/files/usr/libexec/rpcd/mwan3 @@ -15,7 +15,7 @@ report_connected_v4() { local address if [ -n "$($IPT4 -S mwan3_connected 2> /dev/null)" ]; then - for address in $($IPS list mwan3_connected_v4 | tail -n +8); do + for address in $($IPS -o save list mwan3_connected_v4 | grep add | cut -d " " -f 3); do json_add_string "" "${address}" done fi @@ -25,7 +25,7 @@ report_connected_v6() { local address if [ -n "$($IPT6 -S mwan3_connected 2> /dev/null)" ]; then - for address in $($IPS list mwan3_connected_v6 | tail -n +8); do + for address in $($IPS -o save list mwan3_connected_v6 | grep add | cut -d " " -f 3); do json_add_string "" "${address}" done fi