From 2e23fe9487085f4f53021cd2a9faff96180d568f Mon Sep 17 00:00:00 2001 From: Rob Landley Date: Mon, 7 Apr 2025 07:53:26 -0500 Subject: [PATCH] No need for killall5 to depend on kill, and let kill -l list multiple signals (which bash's kill can do but debian's /bin/kill can't). --- toys/posix/kill.c | 15 ++++++--------- 1 file changed, 6 insertions(+), 9 deletions(-) diff --git a/toys/posix/kill.c b/toys/posix/kill.c index dc4c370f..44a6efef 100644 --- a/toys/posix/kill.c +++ b/toys/posix/kill.c @@ -30,7 +30,6 @@ config KILL config KILLALL5 bool "killall5" default y - depends on KILL help usage: killall5 [-l [SIGNAL]] [-SIGNAL|-s SIGNAL] [-o PID]... @@ -59,19 +58,17 @@ GLOBALS( void kill_main(void) { int signum; - char *tmp, **args = toys.optargs; + char *tmp, **args = toys.optargs, *s; pid_t pid; // list signal(s) if (FLAG(l)) { - if (*args) { - int signum = sig_to_num(*args); - char *s = 0; - - if (signum>=0) s = num_to_sig(signum&127); - if (isdigit(**args)) puts(s ? s : "UNKNOWN"); + if (!*args) list_signals(); + else do { + s = (signum = sig_to_num(*args))<0 ? "UNKNOWN" : num_to_sig(signum&127); + if (isdigit(**args)) puts(s); else printf("%d\n", signum); - } else list_signals(); + } while (*++args); return; } -- 2.39.5