static char *sccsid
= "@(#)kill.c 4.2 (Berkeley) 10/10/80";
* kill - send signal to process
"HUP", "INT", "QUIT", "ILL", "TRAP", "IOT", "EMT", "FPE", /* 1-8 */
"KILL", "BUS", "SEGV", "SYS", "PIPE", "ALRM", "TERM", 0, /* 9-16 */
"STOP", "TSTP", "CONT", "CHLD", "TTIN", "TTOU", "TINT", "XCPU", /* 17-24 */
"XFSZ", 0, 0, 0, 0, 0, 0, 0, /* 25-31 */
register signo
, pid
, res
;
extern char *sys_errlist
[];
printf("usage: kill [ -sig ] pid ...\n");
printf("for a list of signals: kill -l\n");
for (signo
= 1; signo
<= NSIG
; signo
++) {
printf("%s ", signm
[signo
]);
} else if (isdigit(argv
[1][1])) {
if (signo
< 1 || signo
> NSIG
) {
printf("kill: %s: number out of range\n",
for (signo
= 1; signo
<= NSIG
; signo
++)
if (signm
[signo
] && !strcmp(signm
[signo
], name
))
printf("kill: %s: unknown signal; kill -l lists signals\n", name
);
if (**argv
<'0' || **argv
>'9')
res
= kill(pid
= atoi(*argv
), signo
);
printf("%u: %s\n", pid
, sys_errlist
[errno
]);