Ver Fonte

package/base-files-network: fix udhcpc issues introduced in r28866 (closes: #10383)

SVN-Revision: 28942
Nicolas Thill há 14 anos atrás
pai
commit
348347ce41

+ 1 - 1
package/base-files-network/Makefile

@@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk
 include $(INCLUDE_DIR)/kernel.mk
 
 PKG_NAME:=base-files-network
-PKG_RELEASE:=2
+PKG_RELEASE:=3
 
 PKG_BUILD_DEPENDS:=opkg/host
 

+ 9 - 3
package/base-files-network/files/lib/network/config.sh

@@ -370,7 +370,7 @@ setup_interface() {
 			local pidfile="/var/run/dhcp-${iface}.pid"
 
 			SERVICE_PID_FILE="$pidfile" \
-			service_stop udhcpc
+			service_stop /sbin/udhcpc
 
 			local ipaddr netmask hostname proto1 clientid vendorid broadcast reqopts
 			config_get ipaddr "$config" ipaddr
@@ -386,15 +386,21 @@ setup_interface() {
 				$DEBUG ifconfig "$iface" "$ipaddr" ${netmask:+netmask "$netmask"}
 
 			# additional request options
-			local opt dhcpopts
+			local opt dhcpopts daemonize
 			for opt in $reqopts; do
 				append dhcpopts "-O $opt"
 			done
 
 			# don't stay running in background if dhcp is not the main proto on the interface (e.g. when using pptp)
-			[ "$proto1" != "$proto" ] && append dhcpopts "-n -q" || append dhcpopts "-O rootpath -R &"
+			[ "$proto1" != "$proto" ] && {
+				append dhcpopts "-n -q"
+			} || {
+				append dhcpopts "-O rootpath -R"
+				daemonize=1
+			}
 			[ "$broadcast" = 1 ] && broadcast="-O broadcast" || broadcast=
 
+			SERVICE_DAEMONIZE=$daemonize \
 			SERVICE_PID_FILE="$pidfile" \
 			service_start /sbin/udhcpc -t 0 -i "$iface" \
 				${ipaddr:+-r $ipaddr} \