From a51ecdd9e4025d072d2737d6bea8a1d03bc74274 Mon Sep 17 00:00:00 2001 From: Erik Andersen Date: Thu, 24 Feb 2000 18:09:58 +0000 Subject: Minor tweak to argv[0] handling for linuxrc -Erik --- init.c | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) (limited to 'init.c') diff --git a/init.c b/init.c index 6ec811599..183739180 100644 --- a/init.c +++ b/init.c @@ -803,10 +803,16 @@ extern int init_main(int argc, char **argv) int status; #ifndef DEBUG_INIT - /* Expect to be PID 1 if we are run as init (not linuxrc) */ - if (getpid() != 1 && strstr(argv[0], "init") != NULL) { - usage("init\n\nInit is the parent of all processes.\n\n" - "This version of init is designed to be run only by the kernel\n"); + /* Expect to be invoked as init with PID=1 or be invoked as linuxrc */ + if (getpid() != 1 +#ifdef BB_FEATURE_LINUXRC + && strstr(argv[0], "linuxrc") == NULL +#endif + ) + { + usage("init\n\nInit is the parent of all processes.\n\n" + "This version of init is designed to be run only " + "by the kernel.\n"); } /* Set up sig handlers -- be sure to * clear all of these in run() */ -- cgit v1.2.3