From 7026c59b5ef1767bfcea65060fca615b00a4b283 Mon Sep 17 00:00:00 2001 From: andersen Date: Fri, 25 Jan 2002 23:13:06 +0000 Subject: Teach 'init -q' that init's pid may not equal 1 git-svn-id: svn://busybox.net/trunk/busybox@4111 69ca8d6d-28ef-0310-b511-8ec308f3f277 --- init/init.c | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) (limited to 'init') diff --git a/init/init.c b/init/init.c index 79a748454..e48dc50cc 100644 --- a/init/init.c +++ b/init/init.c @@ -963,7 +963,14 @@ extern int init_main(int argc, char **argv) if (argc > 1 && !strcmp(argv[1], "-q")) { - kill(1, SIGHUP); + /* don't assume init's pid == 1 */ + long *pid = find_pid_by_name("init"); + if (!pid || *pid<=0) { + pid = find_pid_by_name("linuxrc"); + if (!pid || *pid<=0) + error_msg_and_die("no process killed"); + } + kill(*pid, SIGHUP); exit(0); } -- cgit v1.2.3-55-g6feb