[package] base-files: utilize uci_get_state to read the previous dhcp router address...
authorjow <jow@3c298f89-4303-0410-b956-a3cf2f4a3e73>
Mon, 4 Oct 2010 00:07:07 +0000 (00:07 +0000)
committerjow <jow@3c298f89-4303-0410-b956-a3cf2f4a3e73>
Mon, 4 Oct 2010 00:07:07 +0000 (00:07 +0000)
The setup_switch() procedure provided by swconfig calls config_load() during network restart and thus confuses
udhcpc's uci state keeping resulting in a missing default route on each second network restart. Bypass the
cached state vars and query uci directly to make the script immune against unwanted runtime changes.

git-svn-id: svn://svn.openwrt.org/openwrt/trunk@23211 3c298f89-4303-0410-b956-a3cf2f4a3e73

package/base-files/Makefile
package/base-files/files/usr/share/udhcpc/default.script

index b8ff8dd..1f510df 100644 (file)
@@ -10,7 +10,7 @@ include $(TOPDIR)/rules.mk
 include $(INCLUDE_DIR)/kernel.mk
 
 PKG_NAME:=base-files
-PKG_RELEASE:=56
+PKG_RELEASE:=57
 
 PKG_FILE_DEPENDS:=$(PLATFORM_DIR)/ $(GENERIC_PLATFORM_DIR)/base-files/
 PKG_BUILD_DEPENDS:=opkg/host
index 92e3474..708f847 100755 (executable)
@@ -41,8 +41,8 @@ setup_interface () {
        # Default Route
        [ -n "$ifc" ] && {
                change_state network "$ifc" lease_gateway "$router"
-               config_get old_router "$ifc" gateway
-               user_router=$(uci_get "network.$ifc.gateway")
+               old_router="$(uci_get_state network "$ifc" gateway)"
+               user_router="$(uci_get network "$ifc" gateway)"
                [ -n "$user_router" ] && router="$user_router"
        }