• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 #include <unistd.h>
2 #include <stdarg.h>
3 
execl(const char * path,const char * argv0,...)4 int execl(const char *path, const char *argv0, ...)
5 {
6 	int argc;
7 	va_list ap;
8 	va_start(ap, argv0);
9 	for (argc=1; va_arg(ap, const char *); argc++);
10 	va_end(ap);
11 	{
12 		int i;
13 		char *argv[argc+1];
14 		va_start(ap, argv0);
15 		argv[0] = (char *)argv0;
16 		for (i=1; i<argc; i++)
17 			argv[i] = va_arg(ap, char *);
18 		argv[i] = NULL;
19 		va_end(ap);
20 		return execv(path, argv);
21 	}
22 }
23