diff options
author | Will Dietz <w@wdtz.org> | 2017-09-14 16:32:59 -0500 |
---|---|---|
committer | Rich Felker <dalias@aerifal.cx> | 2017-10-19 19:04:16 -0400 |
commit | 004dc9549b8003288e635ba5aa91e3353e1974c4 (patch) | |
tree | 8297be6882fe4bb666067284173bc0609354263c | |
parent | 2cd663fb2d576d590a08c1e40386c07b378d5ad6 (diff) | |
download | musl-004dc9549b8003288e635ba5aa91e3353e1974c4.tar.gz musl-004dc9549b8003288e635ba5aa91e3353e1974c4.tar.bz2 musl-004dc9549b8003288e635ba5aa91e3353e1974c4.tar.xz musl-004dc9549b8003288e635ba5aa91e3353e1974c4.zip |
posix_spawn: use larger stack to cover worst-case in execvpe
execvpe stack-allocates a buffer used to hold the full path
(combination of a PATH entry and the program name)
while searching through $PATH, so at least
NAME_MAX+PATH_MAX is needed.
The stack size can be made conditionally smaller
(the current 1024 appears appropriate)
should this larger size be burdensome in those situations.
-rw-r--r-- | src/process/posix_spawn.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/process/posix_spawn.c b/src/process/posix_spawn.c index ea5d2998..0849c71f 100644 --- a/src/process/posix_spawn.c +++ b/src/process/posix_spawn.c @@ -152,7 +152,7 @@ int __posix_spawnx(pid_t *restrict res, const char *restrict path, char *const argv[restrict], char *const envp[restrict]) { pid_t pid; - char stack[1024]; + char stack[1024+PATH_MAX]; int ec=0, cs; struct args args; |