firmware/src/packages/fff/fff-layer3-config/files/etc/init.d/fff-layer3-update
Fabian Bläse 034d459fc0 fff-layer3-config: Autoconfigure layer3 router after update
This adds a script to init.d to automatically call
the appropriate configure-layer3 commands after an upgrade,
so the configuration of the device is restored.

The changes are applied if configure-layer3 is successful.
Otherwise, they are reverted. Due to this, no additional checks for
the configuration are necessary: The configure-layer3 script
will fail if the config version is wrong or no configuration exists at all.

After executing the script destroys itself. With START=99,
the execution happens _after_ uci-defaults and configurenetwork,
and no interference is expected.

Signed-off-by: Fabian Bläse <fabian@blaese.de>
[convert to init.d, extend commit message, rebase]
Signed-off-by: Christian Dresel <freifunk@dresel.systems>
Reviewed-by: Robert Langhammer <rlanghammer@web.de>
Reviewed-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
2021-01-28 09:12:19 +01:00

18 lines
340 B
Bash
Executable File

#!/bin/sh /etc/rc.common
START=99
boot() {
# Reapply gateway settings, if configuration succeeds
if yes | configure-layer3 -c; then
configure-layer3 -a
else
configure-layer3 -r
fi
# first we disable the init.d
/etc/init.d/fff-layer3-update disable
# we must delete the symlink manually
rm -f /etc/rc.d/S99fff-layer3-update
}