More stuff
[oweals/busybox.git] / kill.c
diff --git a/kill.c b/kill.c
index da025fafc963f1099ff8ee9ffa35bd16da664a8a..e89f913d09dd35433751d906990ea2c63588354e 100644 (file)
--- a/kill.c
+++ b/kill.c
 #include <unistd.h>
 #include <signal.h>
 
-const char     kill_usage[] = "kill [-signal] process-id [process-id ...]\n";
+const char kill_usage[] = "kill [-signal] process-id [process-id ...]\n";
 
 struct signal_name {
-       const char *    name;
-       int                             number;
+    const char *name;
+    int number;
 };
 
 const struct signal_name signames[] = {
-       { "HUP",        SIGHUP },
-       { "INT",        SIGINT },
-       { "QUIT",       SIGQUIT },
-       { "ILL",        SIGILL },
-       { "TRAP",       SIGTRAP },
-       { "ABRT",       SIGABRT },
+    {"HUP", SIGHUP},
+    {"INT", SIGINT},
+    {"QUIT", SIGQUIT},
+    {"ILL", SIGILL},
+    {"TRAP", SIGTRAP},
+    {"ABRT", SIGABRT},
 #ifndef __alpha__
-       { "IOT",        SIGIOT },
+    {"IOT", SIGIOT},
 #endif
-#if defined(sparc) || defined(__alpha__)
-       { "EMT",        SIGEMT },
+#if defined(__sparc__) || defined(__alpha__)
+    {"EMT", SIGEMT},
 #else
-       { "BUS",        SIGBUS },
+    {"BUS", SIGBUS},
 #endif
-       { "FPE",        SIGFPE },
-       { "KILL",       SIGKILL },
-#if defined(sparc) || defined(__alpha__)
-       { "BUS",        SIGBUS },
+    {"FPE", SIGFPE},
+    {"KILL", SIGKILL},
+#if defined(__sparc__) || defined(__alpha__)
+    {"BUS", SIGBUS},
 #else
-       { "USR1",       SIGUSR1 },
+    {"USR1", SIGUSR1},
 #endif
-       { "SEGV",       SIGSEGV },
-#if defined(sparc) || defined(__alpha__)
-       { "SYS",        SIGSYS },
+    {"SEGV", SIGSEGV},
+#if defined(__sparc__) || defined(__alpha__)
+    {"SYS", SIGSYS},
 #else
-       { "USR2",       SIGUSR2 },
+    {"USR2", SIGUSR2},
 #endif
-       { "PIPE",       SIGPIPE },
-       { "ALRM",       SIGALRM },
-       { "TERM",       SIGTERM },
-#if defined(sparc) || defined(__alpha__)
-       { "URG",        SIGURG },
-       { "STOP",       SIGSTOP },
-       { "TSTP",       SIGTSTP },
-       { "CONT",       SIGCONT },
-       { "CHLD",       SIGCHLD },
-       { "TTIN",       SIGTTIN },
-       { "TTOU",       SIGTTOU },
-       { "IO",         SIGIO },
+    {"PIPE", SIGPIPE},
+    {"ALRM", SIGALRM},
+    {"TERM", SIGTERM},
+#if defined(__sparc__) || defined(__alpha__)
+    {"URG", SIGURG},
+    {"STOP", SIGSTOP},
+    {"TSTP", SIGTSTP},
+    {"CONT", SIGCONT},
+    {"CHLD", SIGCHLD},
+    {"TTIN", SIGTTIN},
+    {"TTOU", SIGTTOU},
+    {"IO", SIGIO},
 # ifndef __alpha__
-       { "POLL",       SIGIO },
+    {"POLL", SIGIO},
 # endif
-       { "XCPU",       SIGXCPU },
-       { "XFSZ",       SIGXFSZ },
-       { "VTALRM",     SIGVTALRM },
-       { "PROF",       SIGPROF },
-       { "WINCH",      SIGWINCH },
+    {"XCPU", SIGXCPU},
+    {"XFSZ", SIGXFSZ},
+    {"VTALRM", SIGVTALRM},
+    {"PROF", SIGPROF},
+    {"WINCH", SIGWINCH},
 # ifdef __alpha__
-       { "INFO",       SIGINFO },
+    {"INFO", SIGINFO},
 # else
-       { "LOST",       SIGLOST },
+    {"LOST", SIGLOST},
 # endif
-       { "USR1",       SIGUSR1 },
-       { "USR2",       SIGUSR2 },
+    {"USR1", SIGUSR1},
+    {"USR2", SIGUSR2},
 #else
-       { "STKFLT",     SIGSTKFLT },
-       { "CHLD",       SIGCHLD },
-       { "CONT",       SIGCONT },
-       { "STOP",       SIGSTOP },
-       { "TSTP",       SIGTSTP },
-       { "TTIN",       SIGTTIN },
-       { "TTOU",       SIGTTOU },
-       { "URG",        SIGURG },
-       { "XCPU",       SIGXCPU },
-       { "XFSZ",       SIGXFSZ },
-       { "VTALRM",     SIGVTALRM },
-       { "PROF",       SIGPROF },
-       { "WINCH",      SIGWINCH },
-       { "IO",         SIGIO },
-       { "POLL",       SIGPOLL },
-       { "PWR",        SIGPWR },
-       { "UNUSED",     SIGUNUSED },
+    {"STKFLT", SIGSTKFLT},
+    {"CHLD", SIGCHLD},
+    {"CONT", SIGCONT},
+    {"STOP", SIGSTOP},
+    {"TSTP", SIGTSTP},
+    {"TTIN", SIGTTIN},
+    {"TTOU", SIGTTOU},
+    {"URG", SIGURG},
+    {"XCPU", SIGXCPU},
+    {"XFSZ", SIGXFSZ},
+    {"VTALRM", SIGVTALRM},
+    {"PROF", SIGPROF},
+    {"WINCH", SIGWINCH},
+    {"IO", SIGIO},
+    {"POLL", SIGPOLL},
+    {"PWR", SIGPWR},
+    {"UNUSED", SIGUNUSED},
 #endif
-       { 0,            0               }
+    {0, 0}
 };
 
-extern int
-kill_main(struct FileInfo * i, int argc, char * * argv)
+extern int kill_main (int argc, char **argv)
 {
-       int     had_error = 0;
-       int     sig = SIGTERM;
-       if ( argv[1][0] == '-' ) {
-               if ( argv[1][1] >= '0' && argv[1][1] <= '9' ) {
-                       sig = atoi(&argv[1][1]);
-                       if ( sig < 0 || sig >= NSIG ) {
-                               usage(kill_usage);
-                               exit(-1);
-                       }
-               }
-               else {
-                       const struct signal_name *      s = signames;
-                       for ( ; ; ) {
-                               if ( strcmp(s->name, &argv[1][1]) == 0 ) {
-                                       sig = s->number;
-                                       break;
-                               }
-                               s++;
-                               if ( s->name == 0 ) {
-                                       usage(kill_usage);
-                                       exit(-1);
-                               }
-                       }
-               }
-               argv++;
-               argc--;
+    int had_error = 0;
+    int sig = SIGTERM;
 
-       }
-       while ( argc > 1 ) {
-               int     pid;
-               if ( argv[1][0] < '0' || argv[1][0] > '9' ) {
-                       usage(kill_usage);
-                       exit(-1);
-               }
-               pid = atoi(argv[1]);
-               if ( kill(pid, sig) != 0 ) {
-                       had_error = 1;
-                       perror(argv[1]);
+
+
+    if (argv[1][0] == '-') {
+       if (argv[1][1] >= '0' && argv[1][1] <= '9') {
+           sig = atoi (&argv[1][1]);
+           if (sig < 0 || sig >= NSIG)
+               goto end;
+       } else {
+           const struct signal_name *s = signames;
+           for (;;) {
+               if (strcmp (s->name, &argv[1][1]) == 0) {
+                   sig = s->number;
+                   break;
                }
-               argv++;
-               argc--;
+               s++;
+               if (s->name == 0)
+                   goto end;
+           }
+       }
+       argv++;
+       argc--;
+
+    }
+    while (argc > 1) {
+       int pid;
+       if (argv[1][0] < '0' || argv[1][0] > '9')
+           goto end;
+       pid = atoi (argv[1]);
+       if (kill (pid, sig) != 0) {
+           had_error = 1;
+           perror (argv[1]);
        }
-       if ( had_error )
-               return -1;
-       else
-               return 0;
+       argv++;
+       argc--;
+    }
+    if (had_error) {
+end:
+       usage (kill_usage);
+    }
+    exit (TRUE);
 }