[v6,03/11] fff-network: Prevent resetting network config on each reboot

Submitted by Adrian Schmutzler on Aug. 3, 2017, 11:52 a.m.

Details

Message ID 1501761120-1965-1-git-send-email-freifunk@adrianschmutzler.de
State Superseded
Headers show

Commit Message

Adrian Schmutzler Aug. 3, 2017, 11:52 a.m.
This only sets the switch configs if they are not set yet.
If the network.* file is edited, add FORCEPARSE=1 to apply
the changes.

Fixes #56

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>

Tested-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
---
 src/packages/fff/fff-network/files/usr/sbin/configurenetwork | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

Patch hide | download patch | download mbox

diff --git a/src/packages/fff/fff-network/files/usr/sbin/configurenetwork b/src/packages/fff/fff-network/files/usr/sbin/configurenetwork
index 7ecfa3b..5b06009 100755
--- a/src/packages/fff/fff-network/files/usr/sbin/configurenetwork
+++ b/src/packages/fff/fff-network/files/usr/sbin/configurenetwork
@@ -12,7 +12,7 @@ 
 BOARD="$(uci get board.model.name)"
 . /etc/network.$BOARD
 
-if ! uci get network.$SWITCHDEV.ifname; then
+if ! uci -q get network.$SWITCHDEV > /dev/null || [ "$FORCEPARSE" = '1' ] ; then
 
     SWITCHHW=$(swconfig list | awk '{ print $4 }')
 
@@ -62,10 +62,9 @@  if ! uci get network.$SWITCHDEV.ifname; then
     fi
 
     uci commit
-    /etc/init.d/network restart
 fi
 
-if [ "$ONE_PORT" = "YES" ]; then
+if [ "$ONE_PORT" = "YES" ] && ( ! uci -q get network.$SWITCHDEV.ifname || [ "$FORCEPARSE" = '1' ] ) ; then
     uci set network.$SWITCHDEV=interface
     uci set network.$SWITCHDEV.ifname=$SWITCHDEV
     if [ "$ETHMODE" = "WAN" ]; then
@@ -97,9 +96,10 @@  if [ "$ONE_PORT" = "YES" ]; then
         ETH0MAC="w2ap"
     fi
     uci commit
-    /etc/init.d/network restart
 fi
 
+/etc/init.d/network restart
+
 if [[ -n "$ETHMESHMAC" ]]; then
     if uci get network.ethmesh.macaddr
     then