6 Commits

Author SHA1 Message Date
Rich Felker
14a0117117 make execvp continue PATH search on EACCES rather than issuing an errror
the specification for execvp itself is unclear as to whether
encountering a file that cannot be executed due to EACCES during the
PATH search is a mandatory error condition; however, XBD 8.3's
specification of the PATH environment variable clarifies that the
search continues until a file with "appropriate execution permissions"
is found.

since it seems undesirable/erroneous to report ENOENT rather than
EACCES when an early path element has a non-executable file and all
later path elements lack any file by the requested name, the new code
stores a flag indicating that EACCES was seen and sets errno back to
EACCES in this case.
2015-02-03 00:31:35 -05:00
M Farkas-Dyck
164c5c7a32 expose public execvpe interface 2014-04-20 00:26:55 -04:00
Rich Felker
23ccb80fcb consistently use the internal name __environ for environ
patch by Jens Gustedt.
previously, the intended policy was to use __environ in code that must
conform to the ISO C namespace requirements, and environ elsewhere.
this policy was not followed in practice anyway, making things
confusing. on top of that, Jens reported that certain combinations of
link-time optimization options were breaking with the inconsistent
references; this seems to be a compiler or linker bug, but having it
go away is a nice side effect of the changes made here.
2013-02-17 14:24:39 -05:00
Rich Felker
97c8bdd88a fix parent-memory-clobber in posix_spawn (environ) 2012-10-18 16:41:27 -04:00
Rich Felker
4b87736998 fix various bugs in path and error handling in execvp/fexecve 2011-09-29 00:48:04 -04:00
Rich Felker
0b44a0315b initial check-in, version 0.5.0 2011-02-12 00:22:29 -05:00