2 ** execprog.c -- invoke an external command synchronously
3 ** This is a safer alternative to system(3)
13 execprog(char *cmd, char **arg)
18 switch (pid = fork()) {
21 advise("fork", "unable to");
27 fprintf(stderr, "unable to exec ");
33 return pidXwait(pid, cmd);
36 return -1; /* NOT REACHED */
41 execprogl(char *cmd, char *arg, ...)
49 argv[argc++] = mhbasename(arg);
51 while ((cp = va_arg(ap, char *))) {
55 ret = execprog(cmd, argv);