47 #define SPACE_TAB " \t"
59 static char ok_chars[] =
"1234567890!@%-_=+:,./\
60 abcdefghijklmnopqrstuvwxyz\
66 if (command[strspn(command, ok_chars)] == 0
67 && command[strspn(command,
SPACE_TAB)] != 0) {
75 (void) execvp(argv->
argv[0], argv->
argv);
80 if (errno != ENOENT || strchr(argv->
argv[0],
'/') != 0)
92 (void) execl(_PATH_BSHELL,
"sh",
"-c", command, (
char *) 0);
104 int main(
int argc,
char **argv)
108 msg_fatal(
"usage: %s 'command'", argv[0]);
ARGV * argv_free(ARGV *argvp)
int main(int argc, char **argv)
NORETURN msg_fatal(const char *fmt,...)
ARGV * argv_split(const char *, const char *)
void msg_vstream_init(const char *name, VSTREAM *vp)
NORETURN exec_command(const char *command)