1#include <unistd.h> 2#include <errno.h> 3 4void __procfdname(char *, unsigned); 5 6int fexecve(int fd, char *const argv[], char *const envp[]) 7{ 8 char buf[15 + 3*sizeof(int)]; 9 __procfdname(buf, fd); 10 execve(buf, argv, envp); 11 if (errno == ENOENT) errno = EBADF; 12 return -1; 13} 14