Bug 10221

Summary: Please provide execvpe as a GNU extension
Product: glibc Reporter: Martin Buchholz <martinrb>
Component: libcAssignee: Ulrich Drepper <drepper.fsp>
Status: RESOLVED FIXED    
Severity: normal CC: glibc-bugs
Priority: P2 Flags: fweimer: security-
Version: unspecified   
Target Milestone: ---   
Host: Target:
Build: Last reconfirmed:

Description Martin Buchholz 2009-05-30 19:49:11 UTC
The Unix standards do not provide an execvpe,
which is obvious "missing" functionality.
Java's subprocess implementation is one example of
software projects implementing their own execvpe.
For glibc, the implementation seems particularly easy
- copy posix/execvp.c to posix/execvpe.c, replacing references to 
__environ with a reference to a user-provided envp.

It is hard for users to implement execvpe completely faithfully themselves,
because it is not so easy to find the default value of PATH,
or the right shell to use to run scripts in case of ENOEXEC,
in accordance with the standard practice on the platform.

If agreed, I would be willing to help work on implementation,
although I am not a glibc hacker.

Hopefully, execvpe would be added to a future revision of the Unix standards.
Comment 1 Ulrich Drepper 2009-06-02 14:04:24 UTC
Add in git master.