Jakub Zelenka
23a2030438
Fix bug #72185 : php-fpm writes empty fcgi record causing nginx 502
...
This issue might happen if there is change of the fcgi stream when
the buffer is full. Then the empty record is created which signals
end of stream which is incorrect.
The actual fix without a test was contributed by GitHub user @loveharmful
in GH-3198.
2022-05-10 21:36:55 +01:00
David CARLIER
ef06f0f50b
Fix FPM ACL build check on MacOS
...
MacOS has got ACL support but without user/group support.
2022-04-29 20:39:22 +01:00
Jakub Zelenka
0df28869f6
Add skip for FPM resource heavy tests
2022-04-27 19:11:47 +01:00
David Carlier
ff90d42b8b
Fix FPM kqueue handler fix remove callback typo
...
It avoids confusion on failed event.
2022-04-23 15:11:53 +01:00
Jakub Zelenka
d8612fb6b7
Fix bug #77023 : FPM cannot shutdown processes
...
This change introduces subsequent kill of the process when idle process quit
(SIGQUIT) does not succeed. It can happen in some situations and means that FPM
is not able to scale down in dynamic pm. Using SIGKILL fixes the issue.
2022-04-22 20:51:02 +01:00
David Carlier
2f0918c638
Fix FPM socket clean up reallocation clang build warning
2022-04-15 22:20:15 +01:00
David Carlier
fc9fecbd09
Fix FPM zlog warning with var being uninitialized
2022-04-15 22:19:36 +01:00
Jakub Zelenka
33bb201b3e
Fix bug #76003 : FPM /status reports wrong number of active processe
...
The fix introduces early locking of scoreboard when it is updated
which prevents the race condition causing an incorrect number of
active processes being set.
2022-04-12 23:12:11 +01:00
Christoph M. Becker
e98a7a68b7
Fix bugtracker URL
...
The php-src bugtracker is now on Github.
Closes GH-8102.
2022-02-15 19:14:07 +01:00
Till Backhaus
29fe06fa59
Fix bug #76109 : Implement fpm_scoreboard_copy
...
fpm_scoreboard_copy locks the scoreboard while copying the scoreboard and all
proc scoreboards. proc scoreboards are locked one by one while copying each
struct. The old implementation (inside fpm_handle_status_request) only briefly
locked the scoreboard while copying the scorebard.
Closes GH-7931
Co-authored-by: Jakub Zelenka <bukka@php.net >
2022-02-09 23:02:45 +00:00
David Carlier
c99a026c9c
Fix memory leak on invalid port
...
Closes GH-7911.
2022-01-08 21:04:55 +01:00
David Carlier
cb3d858745
Fix buffer allocations in zlog_stream_set_msg_suffix()
...
If that code was used, there would be a UAF scenario.
Closes GH-7835.
2021-12-28 13:27:54 +01:00
Jakub Zelenka
81513e6285
Add skip for FPM process idle flaky test
2021-11-27 22:37:43 +00:00
Jakub Zelenka
2f8407f185
Increase read timeout in FPM process idle test
2021-11-20 20:42:19 +00:00
Jakub Zelenka
fc67967190
Increase script sleep in FPM process idle test
2021-11-20 20:42:19 +00:00
Jakub Zelenka
ec3d4409a4
Merge branch 'PHP-7.4' into PHP-8.0
2021-11-14 20:10:42 +00:00
Jakub Zelenka
b2cf9b7ec7
Fix bug #81513 (Future possibility for heap overflow in FPM zlog)
...
This fixes currently unused code path in zlog that could lead to
the heap overflow in the future.
2021-11-14 20:08:57 +00:00
David Carlier
b1e6fdefd4
Fix leaks for AppArmor based distros in case the profile creation fails
...
Closes GH-7646.
2021-11-12 14:25:52 +01:00
Jakub Zelenka
fadb1f8c1d
Fix bug #81026 (PHP-FPM oob R/W in root process leading to priv escalation)
...
The main change is to store scoreboard procs directly to the variable sized
array rather than indirectly through the pointer.
Signed-off-by: Stanislav Malyshev <stas@php.net >
2021-10-18 15:06:36 -07:00
Jakub Zelenka
cb2021e5f6
Fix bug #81026 (PHP-FPM oob R/W in root process leading to priv escalation)
...
The main change is to store scoreboard procs directly to the variable sized
array rather than indirectly through the pointer.
Signed-off-by: Stanislav Malyshev <stas@php.net >
2021-10-17 20:16:10 -07:00
Nikita Popov
a00d933242
Merge branch 'PHP-7.4' into PHP-8.0
...
* PHP-7.4:
Disable failing FPM test
2021-10-04 23:31:31 +02:00
Nikita Popov
4c01bd2ade
Disable failing FPM test
...
Test fails intermittently, e.g.:
https://dev.azure.com/phpazuredevops/PHP/_build/results?buildId=20597&view=ms.vss-test-web.build-test-results-tab&runId=475324&resultId=115501&paneView=debug
Possibly this is because the two requests end up being processed
in sequence and no second process is spawned.
2021-10-04 23:30:14 +02:00
Jakub Zelenka
9ed95846a3
Merge branch 'PHP-7.4' into PHP-8.0
2021-10-04 21:55:21 +01:00
Jakub Zelenka
66a655fdf4
Add the actual test for FPM prod idle timeout test with 6s sleep
2021-10-04 21:54:32 +01:00
Jakub Zelenka
2cd69115d5
Merge branch 'PHP-7.4' into PHP-8.0
2021-10-04 21:53:34 +01:00
Jakub Zelenka
edfb347019
Add FPM prod idle timeout test with 6s sleep
2021-10-04 21:50:57 +01:00
Nikita Popov
987aee10a9
Merge branch 'PHP-7.4' into PHP-8.0
...
* PHP-7.4:
Revert "Add FPM prod idle timeout test"
2021-10-04 10:16:53 +02:00
Nikita Popov
69514e6ffb
Revert "Add FPM prod idle timeout test"
...
This reverts commit 08f52b1643 .
The newly added test fails.
2021-10-04 10:16:20 +02:00
Jakub Zelenka
ca3f20209f
Merge branch 'PHP-7.4' into PHP-8.0
2021-10-02 18:27:47 +01:00
Jakub Zelenka
08f52b1643
Add FPM prod idle timeout test
2021-10-02 18:26:18 +01:00
Christoph M. Becker
bb4dbbc150
Merge branch 'PHP-7.4' into PHP-8.0
...
* PHP-7.4:
Fix #80849 : HTTP Status header truncation
2021-07-15 19:13:58 +02:00
Christoph M. Becker
a054ef2aad
Fix #80849 : HTTP Status header truncation
...
While truncating the contents of a header is okay, we must never omit
the trailing CRLF.
Closes GH-7238.
2021-07-15 19:10:53 +02:00
Joe Watkins
33a93b5ed7
Merge branch 'PHP-7.4' into PHP-8.0
...
* PHP-7.4:
missing ;
2021-05-11 11:10:52 +02:00
Joe Watkins
ef3e0ee08a
missing ;
2021-05-11 11:10:38 +02:00
Joe Watkins
6ccbaa12e0
Merge branch 'PHP-7.4' into PHP-8.0
...
* PHP-7.4:
php-fpm: fix Solaris port events.mechanism
2021-05-11 11:07:47 +02:00
Petr Sumbera
04078a597c
php-fpm: fix Solaris port events.mechanism
...
Bug #65800
Fix by: rainer.jung@kippdata.de
2021-05-11 11:01:38 +02:00
Christoph M. Becker
0f40426450
Merge branch 'PHP-7.4' into PHP-8.0
...
* PHP-7.4:
Fix misleading error message
2021-04-20 15:43:04 +02:00
Christoph M. Becker
263f14ac60
Fix misleading error message
...
Closes GH-6889.
2021-04-20 15:41:42 +02:00
Nikita Popov
ec24f14820
Merge branch 'PHP-7.4' into PHP-8.0
...
* PHP-7.4:
Fix return type of sparc atomic helper
2021-04-13 14:37:18 +02:00
David Carlier
5ccb5fd91e
Fix return type of sparc atomic helper
...
Closes GH-6808.
2021-04-13 14:36:58 +02:00
Jakub Zelenka
713b82131b
Merge branch 'PHP-7.4' into PHP-8.0
2021-03-21 19:00:38 +00:00
Jakub Zelenka
c483b59124
Fix bug #80024 : Duplication of info about inherited socket after pool removing
2021-03-21 18:52:07 +00:00
Nikita Popov
f1cf553437
Merge branch 'PHP-7.4' into PHP-8.0
...
* PHP-7.4:
Update year to 2021
2021-02-02 16:46:52 +01:00
Peter Kokot
8c04944b66
Update year to 2021
...
Closes GH-6636.
2021-02-02 16:46:16 +01:00
Jakub Zelenka
d254078020
Merge branch 'PHP-7.4' into PHP-8.0
2020-12-13 18:42:11 +00:00
Jakub Zelenka
a221e17b41
Fix bug #69625 : FPM returns 200 status on request without SCRIPT_FILENAME
2020-12-13 18:39:48 +00:00
Nikita Popov
c97da0f819
Revert "Fix bug #64865 : Use CONTEXT_DOCUMENT_ROOT for scanning dir tree"
...
This reverts commit 98bfad738a .
This doesn't work well in some setups, see bug #80113 and GH-5051.
Reverting this for now.
2020-10-19 11:23:00 +02:00
Nikita Popov
2c15c9ce80
Rehash function table after disabling functions
...
To perform fast shutdown without full table cleanup we need all
internal functions to be in one continuous chunk. This was
violated when functions were deleted via disable_functions.
This drops the zend_disable_function() API in favor of
zend_disable_functions(), which disables the given list of
functions and performs the necessary rehash afterwards.
Also drop PG(disabled_functions), which is no longer used.
2020-08-28 16:50:07 +02:00
Kees Cook
2c2bb50984
sapi/fpm/config.m4: check for libapparmor's aa_change_profile()
...
The fpm code actually uses aa_change_profile(), not change_hat(). Test
for the correct function. (libapparmor always has both, so this is just
a correctness fix.)
Closes GH-6037.
2020-08-24 10:10:12 +02:00
Nyholm
3485ec40ce
Small CS fix
...
The comments were incorrectly aligned. Fix this by dropping the
alignment and moving the comments before the declarations.
Closes GH-5975.
2020-08-12 12:16:53 +02:00