aboutsummaryrefslogtreecommitdiff
path: root/toys
diff options
context:
space:
mode:
authorElliott Hughes <enh@google.com>2019-06-07 22:52:38 -0700
committerRob Landley <rob@landley.net>2019-06-10 15:08:08 -0500
commit1e229a235d9e011c4f64169e51be7ac4fa78bbde (patch)
treee68712c60331b51dfeff685916bc4c00ff3c7d6b /toys
parente2551dbf740941572607f6eb50cab2cc23e59548 (diff)
downloadtoybox-1e229a235d9e011c4f64169e51be7ac4fa78bbde.tar.gz
Improve signal name<->number conversions.
Include all the signals, not just the POSIX ones. In particular, improve support for real-time signals. My attempt to switch AOSP builds over to toybox timeout got reverted when I broke the ART build bots which use SIGRTMIN+2. Also fix `kill -l 3` to show "QUIT" and `kill -l QUIT` to show "3". Also make the `kill -l` output include numbers and names, and format it to look better on a 80x24 tty, because it's always August 1978 somewhere.
Diffstat (limited to 'toys')
-rw-r--r--toys/lsb/killall.c2
-rw-r--r--toys/posix/kill.c5
2 files changed, 4 insertions, 3 deletions
diff --git a/toys/lsb/killall.c b/toys/lsb/killall.c
index 8870618b..119e01fa 100644
--- a/toys/lsb/killall.c
+++ b/toys/lsb/killall.c
@@ -68,7 +68,7 @@ void killall_main(void)
TT.signum = SIGTERM;
if (toys.optflags & FLAG_l) {
- sig_to_num(NULL);
+ list_signals();
return;
}
diff --git a/toys/posix/kill.c b/toys/posix/kill.c
index f8e86b67..ee68980b 100644
--- a/toys/posix/kill.c
+++ b/toys/posix/kill.c
@@ -67,8 +67,9 @@ void kill_main(void)
char *s = NULL;
if (signum>=0) s = num_to_sig(signum&127);
- puts(s ? s : "UNKNOWN");
- } else sig_to_num(NULL);
+ if (isdigit(**args)) puts(s ? s : "UNKNOWN");
+ else printf("%d\n", signum);
+ } else list_signals();
return;
}