X-Git-Url: https://git.rohieb.name/openwrt.git/blobdiff_plain/46da1409881bee5a1b11691d286f773f38374bd9..efd888e4be8c8b29a77a06a7e6ae1318badf9719:/package/base-files/files/usr/share/udhcpc/default.script diff --git a/package/base-files/files/usr/share/udhcpc/default.script b/package/base-files/files/usr/share/udhcpc/default.script index a3a696be7..147b9f1a9 100755 --- a/package/base-files/files/usr/share/udhcpc/default.script +++ b/package/base-files/files/usr/share/udhcpc/default.script @@ -14,11 +14,11 @@ hotplug_event() { config_get proto $ifc proto [ "$proto" = "dhcp" ] || continue [ ifup = "$1" ] && { - uci set "/var/state/network.$ifc.ipaddr=$ip" - uci set "/var/state/network.$ifc.netmask=${subnet:-255.255.255.0}" - uci set "/var/state/network.$ifc.dnsdomain=$domain" - uci set "/var/state/network.$ifc.dns=$dns" - uci set "/var/state/network.$ifc.gateway=$router" + uci_set_state network "$ifc" ipaddr "$ip" + uci_set_state network "$ifc" netmask "${subnet:-255.255.255.0}" + uci_set_state network "$ifc" dnsdomain "$domain" + uci_set_state network "$ifc" dns "$dns" + uci_set_state network "$ifc" gateway "$router" } env -i ACTION="$1" INTERFACE="$ifc" DEVICE="$ifname" PROTO=dhcp /sbin/hotplug-call iface done @@ -47,12 +47,13 @@ case "$1" in } [ -n "$dns" ] && { - echo -n > $RESOLV_CONF - ${domain:+echo search $domain} >> $RESOLV_CONF + echo -n > "${RESOLV_CONF}.tmp" + ${domain:+echo search $domain} >> "${RESOLV_CONF}.tmp" for i in $dns ; do echo "adding dns $i" - echo "nameserver $i" >> $RESOLV_CONF + echo "nameserver $i" >> "${RESOLV_CONF}.tmp" done + mv "${RESOLV_CONF}.tmp" "$RESOLV_CONF" } hotplug_event ifup