diff options
author | Uros Vampl | 2013-12-16 17:44:58 +0100 |
---|---|---|
committer | Denys Vlasenko | 2013-12-16 17:44:58 +0100 |
commit | 3ac1e0d753ca8e918a3b97020ae09058efffe057 (patch) | |
tree | b96acd47aa9cfc1184f50669ef9722b1f886e30c | |
parent | 9f4f60183b2de12ff618a4966378c6b49184b1de (diff) | |
download | busybox-3ac1e0d753ca8e918a3b97020ae09058efffe057.zip busybox-3ac1e0d753ca8e918a3b97020ae09058efffe057.tar.gz |
killall5: return 2 if no processes got killed
function old new delta
kill_main 943 992 +49
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
-rw-r--r-- | procps/kill.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/procps/kill.c b/procps/kill.c index cd189bc..8e42137 100644 --- a/procps/kill.c +++ b/procps/kill.c @@ -158,7 +158,8 @@ int kill_main(int argc, char **argv) if (killall5) { pid_t sid; procps_status_t* p = NULL; - int ret = 0; + /* compat: exitcode 2 is "no one was signaled" */ + int ret = 2; /* Find out our session id */ sid = getsid(pid); @@ -170,6 +171,7 @@ int kill_main(int argc, char **argv) int i; if (p->sid == (unsigned)sid + || p->sid == 0 /* compat: kernel thread, don't signal it */ || p->pid == (unsigned)pid || p->pid == 1 ) { @@ -200,6 +202,7 @@ int kill_main(int argc, char **argv) goto dont_kill; } kill(p->pid, signo); + ret = 0; dont_kill: ; } resume: |