1 48bfee4e 2005-01-04 devnull #include <u.h>
2 48bfee4e 2005-01-04 devnull #include <libc.h>
5 48bfee4e 2005-01-04 devnull execl(char *prog, ...)
8 48bfee4e 2005-01-04 devnull va_list arg;
9 48bfee4e 2005-01-04 devnull char **argv;
11 48bfee4e 2005-01-04 devnull va_start(arg, prog);
12 48bfee4e 2005-01-04 devnull for(i=0; va_arg(arg, char*) != nil; i++)
14 48bfee4e 2005-01-04 devnull va_end(arg);
16 48bfee4e 2005-01-04 devnull argv = malloc((i+1)*sizeof(char*));
17 48bfee4e 2005-01-04 devnull if(argv == nil)
18 48bfee4e 2005-01-04 devnull return -1;
20 48bfee4e 2005-01-04 devnull va_start(arg, prog);
21 48bfee4e 2005-01-04 devnull for(i=0; (argv[i] = va_arg(arg, char*)) != nil; i++)
23 48bfee4e 2005-01-04 devnull va_end(arg);
25 48bfee4e 2005-01-04 devnull exec(prog, argv);
26 48bfee4e 2005-01-04 devnull free(argv);
27 48bfee4e 2005-01-04 devnull return -1;