From 72942057bce0111f6c7b1a785af9368690fbdba1 Mon Sep 17 00:00:00 2001 From: Adrian Schmutzler Date: Thu, 2 Nov 2017 14:31:15 +0100 Subject: [PATCH] fff-hoods/fff-wireless: Don't delete WiFi devices We only want to remove WiFi interfaces, not devices during reconfiguration. This still allows for complete reconfiguration, but does not remove device attributes like a disabled 5 GHz or similar. Signed-off-by: Adrian Schmutzler Reviewed-by: Christian Dresel Reviewed-by: Tim Niemeyer --- .../fff/fff-hoods/files/usr/sbin/configurehood | 4 ++-- .../fff-wireless/files/lib/functions/fff/wireless | 15 +++++++++++++++ 2 files changed, 17 insertions(+), 2 deletions(-) diff --git a/src/packages/fff/fff-hoods/files/usr/sbin/configurehood b/src/packages/fff/fff-hoods/files/usr/sbin/configurehood index 42eb9661..9c7f6c9c 100755 --- a/src/packages/fff/fff-hoods/files/usr/sbin/configurehood +++ b/src/packages/fff/fff-hoods/files/usr/sbin/configurehood @@ -81,7 +81,7 @@ else rm -f "$sectorcopy" # always delete: no broadcast for isolated device rm -f "$sectortmp" - if ! wifiDelAll; then + if ! wifiDelIface; then echo "Can't delete current wifi setup" exit 1 fi @@ -181,7 +181,7 @@ if [ -s "$hoodfile" ]; then uci -q set "system.@system[0].hood=$hood" uci -q commit system - if ! wifiDelAll; then + if ! wifiDelIface; then echo "Can't delete current wifi setup" exit 1 fi diff --git a/src/packages/fff/fff-wireless/files/lib/functions/fff/wireless b/src/packages/fff/fff-wireless/files/lib/functions/fff/wireless index b1ff5a94..5b63397a 100644 --- a/src/packages/fff/fff-wireless/files/lib/functions/fff/wireless +++ b/src/packages/fff/fff-wireless/files/lib/functions/fff/wireless @@ -14,6 +14,21 @@ wifiDelAll() { return 0 } +wifiDelIface() { + if [ $# -ne "0" ] + then + echo "Usage: wifiDelIface" + return 1 + fi + + grep 'config wifi-iface' /etc/config/wireless | sed -n -e "s/.*'\([^']*\)'.*/\1/p" | while read -r line ; do + uci -q delete "wireless.$line" + done + uci -q commit wireless + + return 0 +} + wifiAddPhy() { if [ $# -ne "2" ] then