diff options
author | Anatol Belski <ab@php.net> | 2016-02-02 14:19:10 +0100 |
---|---|---|
committer | Julien Pauli <jpauli@php.net> | 2016-02-02 14:33:56 +0100 |
commit | 523bb2473470242c9b167584247bf7c6b4bcb8d5 (patch) | |
tree | 79bc22eb3fab660ce86e89d758276125eee1acdb /ext/standard/exec.c | |
parent | 795a3bd4ab657f43372b17c564fc407433d9d893 (diff) | |
download | php-git-PHP-5.5.32.tar.gz |
add error check to sysconf callphp-5.5.32PHP-5.5.32
Diffstat (limited to 'ext/standard/exec.c')
-rw-r--r-- | ext/standard/exec.c | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/ext/standard/exec.c b/ext/standard/exec.c index 461bef4f72..329066e2b7 100644 --- a/ext/standard/exec.c +++ b/ext/standard/exec.c @@ -50,6 +50,10 @@ #include <unistd.h> #endif +#if HAVE_LIMITS_H +#include <limits.h> +#endif + #ifdef PHP_WIN32 # include "win32/php_stdint.h" #else @@ -67,6 +71,13 @@ PHP_MINIT_FUNCTION(exec) { #ifdef _SC_ARG_MAX cmd_max_len = sysconf(_SC_ARG_MAX); + if (-1 == cmd_max_len) { +#ifdef _POSIX_ARG_MAX + cmd_max_len = _POSIX_ARG_MAX; +#else + cmd_max_len = 4096; +#endif + } #elif defined(ARG_MAX) cmd_max_len = ARG_MAX; #elif defined(PHP_WIN32) |