Re: [PATCH -mm 0/7] execns syscall and user namespace

H. Peter Anvin
2006-07-11T21:58:25Z

Cedric Le Goater wrote:
>
> How's that ?
>
> int execvef(int flags, const char *filename, char *const argv [], char
> *const envp[]);
>
> initially, flags would be :
>
> #define EXECVEF_NEWNS 0x00000100
> #define EXECVEF_NEWIPC 0x00000200
> #define EXECVEF_NEWUTS 0x00000400
> #define EXECVEF_NEWUSER 0x00000800
>
> execvef() would behave like execve() if flags == 0 and would return EINVAL
> if flags is invalid. unshare of a namespace can fail and usually returns
> ENOMEM.
>

If flags comes first, I would rather like to call it execfve(), or
perhaps execxve() ("extended") or execove() ("options"). execfve()
sounds like it executes a file descriptor (which would probably be
called fexecve()).

Perhaps more seriously, if we're adding more functionality already, it
should acquire -at functionality (execveat) and take a directory argument.

-hpa