From: nbd <nbd@3c298f89-4303-0410-b956-a3cf2f4a3e73>
Date: Sat, 18 Nov 2006 23:19:32 +0000 (+0000)
Subject: hopefully fix duplicate ppp instances (#895)
X-Git-Url: https://git.rohieb.name/openwrt.git/commitdiff_plain/29b117bb79a9a167c28f7e22ccb7b75ea51e9f4b?ds=inline

hopefully fix duplicate ppp instances (#895)

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

diff --git a/package/base-files/default/sbin/ifdown b/package/base-files/default/sbin/ifdown
index 2b7f7b632..26d0e626d 100755
--- a/package/base-files/default/sbin/ifdown
+++ b/package/base-files/default/sbin/ifdown
@@ -30,7 +30,7 @@ done
 
 # kill active ppp daemon and other processes
 config_get ifname "$cfg" ifname
-pids="$(cat /var/run/${ifname}.pid /var/run/ppp-${cfg}.pid 2>/dev/null)"
+pids="$(head -n1 -q /var/run/${ifname}.pid /var/run/ppp-${cfg}.pid 2>/dev/null)"
 for pid in $pids; do 
 	[ -d "/proc/$pid" ] && {
 		kill $pid
diff --git a/package/ppp/files/ppp.sh b/package/ppp/files/ppp.sh
index 35572a0a0..abc022741 100644
--- a/package/ppp/files/ppp.sh
+++ b/package/ppp/files/ppp.sh
@@ -10,7 +10,7 @@ start_pppd() {
 
 	# make sure only one pppd process is started
 	lock "/var/lock/ppp-${cfg}"
-	local pid="$(cat /var/run/ppp-${cfg}.pid 2>/dev/null)"
+	local pid="$(head -n1 /var/run/ppp-${cfg}.pid 2>/dev/null)"
 	[ -d "/proc/$pid" ] && grep pppd "/proc/$pid/cmdline" 2>/dev/null >/dev/null && {
 		lock -u "/var/lock/ppp-${cfg}"
 		return 0