summaryrefslogtreecommitdiff
path: root/sapi
Commit message (Collapse)AuthorAgeFilesLines
* Fix another flaky FPM testNikita Popov2020-02-281-1/+2
|
* Try to fix intermittent FPM failuresNikita Popov2020-02-281-1/+2
| | | | | Terminate only after expecting the log lines to avoid race condition.
* Fix bug #79014 (PHP-FPM & Primary script unknown)Jakub Zelenka2020-02-231-4/+0
|
* Fix bug #77653 (operator displayed instead of the real error message)Jakub Zelenka2020-02-237-49/+198
|
* Apply tidy formattingNikita Popov2020-02-035-136/+136
| | | | Mostly reindent PHP scripts to spaces.
* Disable parallelism for FPM testsNikita Popov2020-02-031-1/+3
| | | | Let's see if this helps with spurious failures on Azure.
* Merge branch 'PHP-7.3' into PHP-7.4Nikita Popov2020-01-277-3/+170
|\ | | | | | | | | * PHP-7.3: Fix bug #78323: Code 0 is returned on invalid options
| * Fix bug #78323: Code 0 is returned on invalid optionsIvan Mikheykin2020-01-277-3/+170
| | | | | | | | | | Set CLI exit code to 1 when invalid parameters are passed, and print error to stderr.
* | Add sleep in FPM reload testNikita Popov2020-01-212-1/+5
| | | | | | | | Explicitly mark the point where we have to wait.
* | Increase select timeout in FPM testerNikita Popov2020-01-091-1/+1
| | | | | | | | Let's see if that helps with the recent failure spree on Azure.
* | Revert "Display a message if select in FPM test timeouts"Nikita Popov2020-01-081-3/+1
| | | | | | | | | | | | | | This reverts commit e2361498d519561e7eb5b73d138c1eaa80da2a20. Ooops, this occurs normally during some tests, but I didn't notice because I have slow tests disabled...
* | Display a message if select in FPM test timeoutsNikita Popov2020-01-081-1/+3
| |
* | Fix bug #78916 (php-fpm 7.4.0 don't send mail via mail())Jakub Zelenka2019-12-081-4/+1
| |
* | Fix bug #78889 (php-fpm service fails to start)Jakub Zelenka2019-12-011-7/+0
| |
* | Merge branch 'PHP-7.3' into PHP-7.4George Wang2019-11-211-14/+26
|\ \ | |/
| * Merge branch 'PHP-7.2' into PHP-7.3George Wang2019-11-211-14/+26
| |\
| | * Added environment LSAPI_CLEAN_SHUTDOWN to control clean shutdown. Update ↵George Wang2019-11-211-14/+26
| | | | | | | | | | | | SAPI version to LiteSpeed v7.6 .
* | | Do not let PHP-FPM children miss SIGTERM, SIGQUITMaksim Nikulin2019-11-175-12/+140
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Postpone signal delivery while spawning children. Prevent the following case: - Reload (reexec) is in progress. - New master is forking to start enough children for pools where `pm` is not `on-demand`. - Another `SIGUSR2` is received by the master process. - Master process switches to reloading state. - Some child has not set its own signal handlers. - `SIGQUIT` and `SIGTERM` sent by master process are caught by signal handler set by master process and so they are ignored. - A child is running, it has no reason to finish Before pull request #4465 this scenario could cause deadlock, however with 0ed6c37140 reload finishes after `SIGKILL`. Use sigprocmask() around fork() to avoid race of delivery signal to children and setting of own signal handlers. Fixes bug #76601
* | | Merge branch 'PHP-7.3' into PHP-7.4Stanislav Malyshev2019-10-213-4/+72
|\ \ \ | |/ / | | | | | | | | | | | | | | | * PHP-7.3: Fix bug #78599 (env_path_info underflow can lead to RCE) (CVE-2019-11043) bump versions after release set versions for release
| * | Merge branch 'PHP-7.2' into PHP-7.3Stanislav Malyshev2019-10-213-4/+72
| |\ \ | | |/ | | | | | | | | | | | | | | | * PHP-7.2: Fix bug #78599 (env_path_info underflow can lead to RCE) (CVE-2019-11043) bump versions after release set versions for release
| | * Merge branch 'PHP-7.1' into PHP-7.2Stanislav Malyshev2019-10-213-4/+72
| | |\ | | | | | | | | | | | | | | | | | | | | | | | | * PHP-7.1: Fix bug #78599 (env_path_info underflow can lead to RCE) (CVE-2019-11043) bump versions after release set versions for release
| | | * Fix bug #78599 (env_path_info underflow can lead to RCE) (CVE-2019-11043)Jakub Zelenka2019-10-203-4/+72
| | | |
| | | * Sync leading and final newlines in *.phpt sectionsPeter Kokot2018-10-1526-27/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch adds missing newlines, trims multiple redundant final newlines into a single one, and trims redundant leading newlines in all *.phpt sections. According to POSIX, a line is a sequence of zero or more non-' <newline>' characters plus a terminating '<newline>' character. [1] Files should normally have at least one final newline character. C89 [2] and later standards [3] mention a final newline: "A source file that is not empty shall end in a new-line character, which shall not be immediately preceded by a backslash character." Although it is not mandatory for all files to have a final newline fixed, a more consistent and homogeneous approach brings less of commit differences issues and a better development experience in certain text editors and IDEs. [1] http://pubs.opengroup.org/onlinepubs/9699919799/basedefs/V1_chap03.html#tag_03_206 [2] https://port70.net/~nsz/c/c89/c89-draft.html#2.1.1.2 [3] https://port70.net/~nsz/c/c99/n1256.html#5.1.1.2
| | | * Trim trailing whitespace in *.phptPeter Kokot2018-10-1463-122/+122
| | | |
| | | * Sync leading and final newlines in source code filesPeter Kokot2018-10-1479-121/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch adds missing newlines, trims multiple redundant final newlines into a single one, and trims redundant leading newlines. According to POSIX, a line is a sequence of zero or more non-' <newline>' characters plus a terminating '<newline>' character. [1] Files should normally have at least one final newline character. C89 [2] and later standards [3] mention a final newline: "A source file that is not empty shall end in a new-line character, which shall not be immediately preceded by a backslash character." Although it is not mandatory for all files to have a final newline fixed, a more consistent and homogeneous approach brings less of commit differences issues and a better development experience in certain text editors and IDEs. [1] http://pubs.opengroup.org/onlinepubs/9699919799/basedefs/V1_chap03.html#tag_03_206 [2] https://port70.net/~nsz/c/c89/c89-draft.html#2.1.1.2 [3] https://port70.net/~nsz/c/c99/n1256.html#5.1.1.2
| | | * Trim trailing whitespace in source code filesPeter Kokot2018-10-1333-330/+330
| | | |
* | | | Skip fpm bug #74083 test on WindowsMaksim Nikulin2019-10-201-0/+1
| | | | | | | | | | | | | | | | Have not expected side effects of `include`.
* | | | Add (slow) test for fpm concurrent reloads #74083Maksim Nikulin2019-10-201-0/+76
| | | |
* | | | Block signals during fpm master initializationMaksim Nikulin2019-10-204-0/+70
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fix PHP-FPM failure in the case of concurrent reload attempts. Postpone signal delivery to the fpm master process till proper signal handlers are set. Prevent the following case: - Running master process receives `SIGUSR2` and performs `execvp()`. - Another `SIGUSR2` is arrived before signal handlers are set. - Master process dies. - Requests to the HTTP server handled by PHP-fpm can not be served any more. Block some signals using `sigprocmask()` before `execvp()` and early in the `main()` function. Unblock signals as soon as proper handlers are set. Fixes bug #74083
* | | | Fix miscellaneous typos in docsTyson Andre2019-10-191-1/+1
| | | |
* | | | Revert "Link executable files using non PIC object files. This reduces PIC ↵Dmitry Stogov2019-10-105-7/+7
| | | | | | | | | | | | | | | | | | | | | | | | overhead and improves performance." This reverts commit eef85229d0fe9f69d325aa0231e592f35c468afb.
* | | | Fix borked SKIPIFsFabien Villepinte2019-09-302-4/+10
| | | |
* | | | Merge branch 'PHP-7.3' into PHP-7.4Nikita Popov2019-09-306-4/+16
|\ \ \ \ | |/ / /
| * | | Fix #78413: php-fpm request_terminate_timeout does not take effect after ↵Sergei Turchanov2019-09-306-4/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | fastcgi_finish_request To retain legacy behavior I decided to add an option to control request termination logic. If request_terminate_timeout_track_finished is set, then request will be tracked for time limits even after fastcgi_finish_request was called. This patch depends on the fix provided in BUG 78469 (otherwise php-fpm workers listening on named pipes on Windows will be erroneously terminated) (PR #4636)
* | | | XFAIL sapi/fpm/tests/log-bwd-multiple-msgs-stdout-stderr.phptNikita Popov2019-09-271-0/+2
| | | | | | | | | | | | | | | | | | | | This is supposed to be addressed by GH-4007, but that seems stalled for now.
* | | | Merge branch 'PHP-7.3' into PHP-7.4Nikita Popov2019-09-171-4/+4
|\ \ \ \ | |/ / /
| * | | Merge branch 'PHP-7.2' into PHP-7.3Nikita Popov2019-09-171-4/+4
| |\ \ \ | | |/ /
| | * | Add tilde to allowed status/ping pathDrakano2019-09-171-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Because of user specific webdirs it should be possible to set a status/ping path like "/~username/status". Closes GH-4698.
* | | | Fix symtable_cache_limit assignment in phpdbgNikita Popov2019-09-141-1/+1
| | | | | | | | | | | | | | | | | | | | The meaning of the limit changed in 7.4, it now points one past the end. Adjust code accordingly.
* | | | Link executable files using non PIC object files. This reduces PIC overhead ↵Dmitry Stogov2019-09-075-7/+7
| | | | | | | | | | | | | | | | and improves performance.
* | | | Fix pipe detection and stream position handlingNikita Popov2019-09-051-0/+31
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | There are two related changes here: 1. Also check for S_ISCHR/FILE_TYPE_CHAR when checking for pipes, so that we detect ttys as well, which are also not seekable. 2. Always set position=-1 (i.e. ftell will return false) when a pipe is detected. Previously position=0 was sometimes used, depending on whether we're on Windows/Linux and whether the FD or FILE codepath was used.
* | | | Avoid accessing undefined index in CLI server testNikita Popov2019-08-301-3/+3
| | | |
* | | | Don't call Reflection::export() in --rf etc implementationNikita Popov2019-08-301-1/+2
| | | | | | | | | | | | | | | | | | | | This method is deprecated ... instead simply directly print the object.
* | | | Merge branch 'PHP-7.3' into PHP-7.4Jakub Zelenka2019-08-267-9/+91
|\ \ \ \ | |/ / /
| * | | Fix bug #78334 (fpm log prefix message includes wrong stdout/stderr notation)Tsuyoshi Sadakata2019-08-267-9/+91
| | | |
* | | | Fix noalias violation in select callNikita Popov2019-08-231-3/+2
| | | |
* | | | Fix FPM timer event re-registrationNikita Popov2019-07-303-12/+72
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Make sure that fpm_event_add calls inside a timer callback work by unregistering the event from the queue before invoking its callback. The read timeout in tester.inc is increased because the added test needs two seconds (one for SIGTERM, one for SIGKILL) until the reload succeeds, so we should wait longer than that for a response.
* | | | Remove AC_FPM_POLLPeter Kokot2019-07-241-25/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | AC_FPM_POLL defines HAVE_POLL symbol which is already checked by configure.ac and function poll in AC_CHECK_FUNCTIONS. Closes GH-4449
* | | | Fix bindpath mem leak in cgiDavid Carlier2019-07-241-0/+1
| | | | | | | | | | | | | | | | Closes GH-4451.
* | | | Revert "Drop free_filename field from zend_file_handle"Nikita Popov2019-07-242-0/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit e0eca262852dba1a78afcde64a49126c81fead1a. free_filename is used by the wincache extension, restore this field for PHP 7.4.