about summary refs log tree commit diff
path: root/src/process/execvp.c
Commit message (Collapse)AuthorAgeFilesLines
* convert execvp error handling to switch statementRich Felker2018-02-211-2/+9
| | | | | | | this is more extensible if we need to consider additional errors, and more efficient as long as the compiler does not know it can cache the result of __errno_location (a surprisingly complex issue detailed in commit a603a75a72bb469c6be4963ed1b55fabe675fe15).
* fix execvp failing on not-dir entries in PATH.Przemyslaw Pawelczyk2018-02-211-1/+1
| | | | | | | | | | It's better to make execvp continue PATH search on ENOTDIR rather than issuing an error. Bogus entries should not render rest of PATH invalid. Maintainer's note: POSIX seems to require the search to continue like this as part of XBD 8.3 Other Environment Variables. Only errors that conclusively determine non-existence are candidates for continuing; otherwise for consistency we have to report the error.
* make execvp continue PATH search on EACCES rather than issuing an errrorRich Felker2015-02-031-1/+4
| | | | | | | | | | | | | | | 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.
* expose public execvpe interfaceM Farkas-Dyck2014-04-201-0/+3
|
* consistently use the internal name __environ for environRich Felker2013-02-171-2/+2
| | | | | | | | | | | 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.
* fix parent-memory-clobber in posix_spawn (environ)Rich Felker2012-10-181-3/+10
|
* fix various bugs in path and error handling in execvp/fexecveRich Felker2011-09-291-17/+25
|
* initial check-in, version 0.5.0 v0.5.0Rich Felker2011-02-121-0/+34