aboutsummaryrefslogtreecommitdiff
path: root/toys/posix/kill.c
diff options
context:
space:
mode:
Diffstat (limited to 'toys/posix/kill.c')
-rw-r--r--toys/posix/kill.c87
1 files changed, 42 insertions, 45 deletions
diff --git a/toys/posix/kill.c b/toys/posix/kill.c
index 7810b899..2d1606b4 100644
--- a/toys/posix/kill.c
+++ b/toys/posix/kill.c
@@ -1,6 +1,4 @@
-/* vi: set sw=4 ts=4:
- *
- * kill.c - a program to send signals to processes
+/* kill.c - a program to send signals to processes
*
* Copyright 2012 Daniel Walter <d.walter@0x90.at>
*
@@ -9,65 +7,64 @@
USE_KILL(NEWTOY(kill, "?s: l", TOYFLAG_BIN))
config KILL
- bool "kill"
- default y
- help
- usage: kill [-l [SIGNAL] | -s SIGNAL | -SIGNAL] pid...
-
- Send a signal to a process
+ bool "kill"
+ default y
+ help
+ usage: kill [-l [SIGNAL] | -s SIGNAL | -SIGNAL] pid...
+ Send a signal to a process
*/
#define FOR_kill
#include "toys.h"
GLOBALS(
- char *signame;
+ char *signame;
)
void kill_main(void)
{
- int signum;
- char *tmp, **args = toys.optargs;
- pid_t pid;
+ int signum;
+ char *tmp, **args = toys.optargs;
+ pid_t pid;
- // list signal(s)
- if (toys.optflags & FLAG_l) {
- if (*args) {
- int signum = sig_to_num(*args);
- char *s = NULL;
+ // list signal(s)
+ if (toys.optflags & FLAG_l) {
+ if (*args) {
+ int signum = sig_to_num(*args);
+ char *s = NULL;
- if (signum>=0) s = num_to_sig(signum&127);
- puts(s ? s : "UNKNOWN");
- } else sig_to_num(NULL);
- return;
- }
+ if (signum>=0) s = num_to_sig(signum&127);
+ puts(s ? s : "UNKNOWN");
+ } else sig_to_num(NULL);
+ return;
+ }
- // signal must come before pids, so "kill -9 -1" isn't confusing.
+ // signal must come before pids, so "kill -9 -1" isn't confusing.
- if (!TT.signame && *args && **args=='-') TT.signame=*(args++)+1;
- if (TT.signame) {
- char *arg;
- int i = strtol(TT.signame, &arg, 10);
- if (!*arg) arg = num_to_sig(i);
- else arg = TT.signame;
+ if (!TT.signame && *args && **args=='-') TT.signame=*(args++)+1;
+ if (TT.signame) {
+ char *arg;
+ int i = strtol(TT.signame, &arg, 10);
+ if (!*arg) arg = num_to_sig(i);
+ else arg = TT.signame;
- if (!arg || -1 == (signum = sig_to_num(arg)))
- error_exit("Unknown signal '%s'", arg);
- } else signum = SIGTERM;
+ if (!arg || -1 == (signum = sig_to_num(arg)))
+ error_exit("Unknown signal '%s'", arg);
+ } else signum = SIGTERM;
- if (!*args) {
- toys.exithelp++;
- error_exit("missing argument");
- }
+ if (!*args) {
+ toys.exithelp++;
+ error_exit("missing argument");
+ }
- while (*args) {
- char *arg = *(args++);
+ while (*args) {
+ char *arg = *(args++);
- pid = strtol(arg, &tmp, 10);
- if (*tmp || kill(pid, signum) < 0) {
- error_msg("unknown pid '%s'", arg);
- toys.exitval = EXIT_FAILURE;
- }
- }
+ pid = strtol(arg, &tmp, 10);
+ if (*tmp || kill(pid, signum) < 0) {
+ error_msg("unknown pid '%s'", arg);
+ toys.exitval = EXIT_FAILURE;
+ }
+ }
}