10.231 execve
POSIX specification:
https://pubs.opengroup.org/onlinepubs/9699919799/functions/execve.html
Gnulib module: execve
Portability problems fixed by Gnulib:
- On Windows platforms (excluding Cygwin), this function does not pass
command-line arguments correctly if they contain space, tab, backslash,
or double-quote characters.
- On Windows platforms (excluding Cygwin), this function spawns an asynchronous
child process and then exits the current process immediately. As a
consequence, the parent of the current process 1. may incorrectly proceed
as if its child had exited, and 2. will never see the child’s exit status.
- On Windows platforms (excluding Cygwin), the return type of this function is
intptr_t
, not int
.
Note: The Gnulib replacement for this function is not async-safe, that is,
it must not be invoked from a signal handler.
Portability problems not fixed by Gnulib:
- On some platforms, a script without executable permission is still run:
Cygwin 1.5.x.