aboutsummaryrefslogtreecommitdiffstats
path: root/package/base-files-network/files/lib
diff options
context:
space:
mode:
Diffstat (limited to 'package/base-files-network/files/lib')
-rwxr-xr-xpackage/base-files-network/files/lib/network/config.sh13
1 files changed, 8 insertions, 5 deletions
diff --git a/package/base-files-network/files/lib/network/config.sh b/package/base-files-network/files/lib/network/config.sh
index 74810e47d0..da45089dff 100755
--- a/package/base-files-network/files/lib/network/config.sh
+++ b/package/base-files-network/files/lib/network/config.sh
@@ -1,5 +1,5 @@
#!/bin/sh
-# Copyright (C) 2006 OpenWrt.org
+# Copyright (C) 2006-2011 OpenWrt.org
# DEBUG="echo"
@@ -368,7 +368,9 @@ setup_interface() {
dhcp)
# kill running udhcpc instance
local pidfile="/var/run/dhcp-${iface}.pid"
- service_kill udhcpc "$pidfile"
+
+ SERVICE_PID_FILE="$pidfile" \
+ service_stop udhcpc
local ipaddr netmask hostname proto1 clientid vendorid broadcast reqopts
config_get ipaddr "$config" ipaddr
@@ -393,7 +395,8 @@ setup_interface() {
[ "$proto1" != "$proto" ] && append dhcpopts "-n -q" || append dhcpopts "-O rootpath -R &"
[ "$broadcast" = 1 ] && broadcast="-O broadcast" || broadcast=
- $DEBUG eval udhcpc -t 0 -i "$iface" \
+ SERVICE_PID_FILE="$pidfile" \
+ service_start /sbin/udhcpc -t 0 -i "$iface" \
${ipaddr:+-r $ipaddr} \
${hostname:+-H $hostname} \
${clientid:+-c $clientid} \
@@ -426,8 +429,8 @@ stop_interface_dhcp() {
remove_dns "$config"
- local pidfile="/var/run/dhcp-${ifname}.pid"
- service_kill udhcpc "$pidfile"
+ SERVICE_PID_FILE="/var/run/dhcp-${ifname}.pid" \
+ service_stop /sbin/udhcpc
uci -P /var/state revert "network.$config"
}