提交 f2374ed8 编写于 作者: R Rich Felker

implement fexecve

上级 015d33c5
...@@ -86,6 +86,7 @@ int execle(const char *, ...); ...@@ -86,6 +86,7 @@ int execle(const char *, ...);
int execl(const char *, ...); int execl(const char *, ...);
int execvp(const char *, char *const []); int execvp(const char *, char *const []);
int execlp(const char *, ...); int execlp(const char *, ...);
int fexecve(int, char *const [], char *const []);
void _exit(int); void _exit(int);
pid_t getpid(void); pid_t getpid(void);
......
#include <unistd.h>
#include <stdio.h>
int fexecve(int fd, char *const argv[], char *const envp[])
{
static const char proc[] = "/proc/self/fd/%d";
char buf[sizeof proc + 3*sizeof(int)];
snprintf(buf, sizeof buf, proc, fd);
return execve(buf, argv, envp);
}
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册