From 969b27fd35630034bba426687400617eb715880e Mon Sep 17 00:00:00 2001
From: andersen <andersen@69ca8d6d-28ef-0310-b511-8ec308f3f277>
Date: Thu, 9 Dec 1999 22:39:55 +0000
Subject: Adjustments for Johns init stuff,  -Erik

git-svn-id: svn://busybox.net/trunk/busybox@188 69ca8d6d-28ef-0310-b511-8ec308f3f277
---
 halt.c        | 3 ++-
 init/halt.c   | 3 ++-
 init/reboot.c | 4 ++--
 reboot.c      | 4 ++--
 utility.c     | 9 +++++++--
 5 files changed, 15 insertions(+), 8 deletions(-)

diff --git a/halt.c b/halt.c
index ecc6e8f30..23eb23c30 100644
--- a/halt.c
+++ b/halt.c
@@ -26,6 +26,7 @@
 extern int
 halt_main(int argc, char ** argv)
 {
-    exit( kill(1, SIGUSR1));
+    /* don't assume init's pid == 1 */
+    exit( kill(findInitPid(), SIGUSR1));
 }
 
diff --git a/init/halt.c b/init/halt.c
index ecc6e8f30..23eb23c30 100644
--- a/init/halt.c
+++ b/init/halt.c
@@ -26,6 +26,7 @@
 extern int
 halt_main(int argc, char ** argv)
 {
-    exit( kill(1, SIGUSR1));
+    /* don't assume init's pid == 1 */
+    exit( kill(findInitPid(), SIGUSR1));
 }
 
diff --git a/init/reboot.c b/init/reboot.c
index 17ec9f82f..ff2c6ad18 100644
--- a/init/reboot.c
+++ b/init/reboot.c
@@ -26,6 +26,6 @@
 extern int
 reboot_main(int argc, char ** argv)
 {
-	/* don't assume init's pid == 1 */
-	exit( kill(findInitPid(), SIGUSR2));
+    /* don't assume init's pid == 1 */
+    exit( kill(findInitPid(), SIGUSR2));
 }
diff --git a/reboot.c b/reboot.c
index 17ec9f82f..ff2c6ad18 100644
--- a/reboot.c
+++ b/reboot.c
@@ -26,6 +26,6 @@
 extern int
 reboot_main(int argc, char ** argv)
 {
-	/* don't assume init's pid == 1 */
-	exit( kill(findInitPid(), SIGUSR2));
+    /* don't assume init's pid == 1 */
+    exit( kill(findInitPid(), SIGUSR2));
 }
diff --git a/utility.c b/utility.c
index 42ee00c50..74df632b9 100644
--- a/utility.c
+++ b/utility.c
@@ -1068,7 +1068,12 @@ extern long getNum (const char *cp)
 }
 #endif
 
-#if 1
+
+#if defined BB_INIT || defined BB_HALT || defined BB_REBOOT 
+
+#if ! defined BB_FEATURE_USE_PROCFS
+#error Sorry, I depend on the /proc filesystem right now.
+#endif
 /* findInitPid()
  *  
  *  This finds the pid of init (which is not always 1).
@@ -1095,7 +1100,7 @@ findInitPid()
 	fgets(buffer, 256, status);
 	fclose(status);
 
-	if ( (strcmp(&buffer[6], "init\n") == 0)) {
+	if ( (strstr(buffer, "init\n") != NULL )) {
 	    return init_pid;
 	}
     }
-- 
cgit v1.2.3-55-g6feb