1
0
mirror of https://github.com/php/php-src.git synced 2026-04-28 10:43:30 +02:00
Commit Graph

5034 Commits

Author SHA1 Message Date
rjhdby d574df63dc Deprecate alternative array access syntax
RFC: https://wiki.php.net/rfc/deprecate_curly_braces_array_access
2019-07-19 10:06:10 +02:00
Peter Kokot bbdbc2658c Remove duplicate socklen_t check
- Use Autoconf's default AC_CHECK_TYPES

Closes GH-4418
2019-07-18 12:11:19 +02:00
Nikita Popov a986e70991 Avoid double buffering in Zend streams
Disable buffering in PHP streams, to avoid storing and copying the
file contents twice.

This will call stream_set_option() on custom stream wrapper as
well, so the method needs to be implemented to avoid a warning.
2019-07-17 10:40:04 +02:00
Nikita Popov b317f0eb59 Remove ZEND_HANDLE_MAPPED
The buf/len members are now simply used in addition to the main
stream, without changing the handle kind.
2019-07-16 17:44:32 +02:00
Nikita Popov e0eca26285 Drop free_filename field from zend_file_handle
free_filename was always zero.
2019-07-16 17:07:26 +02:00
Nikita Popov 49bac9b77b Introduce zend_stream_init_filename()
Avoid more ad-hoc initialization of zend_file_handle structures.
2019-07-16 16:44:37 +02:00
Nikita Popov 46faf8f018 Introduce zend_stream_init_fp() API
Reduce the amount of code that mucks around with zend_file_handle
initialization.
2019-07-16 16:44:37 +02:00
Nikita Popov ebfa05677b Merge branch 'PHP-7.3' into PHP-7.4 2019-07-16 11:11:00 +02:00
Nikita Popov eea9d61763 Merge branch 'PHP-7.2' into PHP-7.3 2019-07-16 11:10:51 +02:00
Nikita Popov 8a19fe29de Fixed bug #78297 2019-07-16 11:09:17 +02:00
Nikita Popov c5f1b384b5 Move shebang handling into the lexer
Instead of handling shebang lines by adjusting the file pointer in
individual SAPIs, move the handling into the lexer, where this is
both a lot simpler and more robust. Whether the shebang should be
skipped is controlled by CG(skip_shebang) -- we might want to do
that in more cases.

This fixed bugs #60677 and #78066.
2019-07-15 16:25:49 +02:00
Nikita Popov 17f7fb7605 Switch to using shell-less proc_open() in various server tests 2019-07-11 15:48:10 +02:00
Nikita Popov dfe5fd2a37 Avoid invalid array access in fcgi.inc 2019-07-10 11:09:34 +02:00
David Carlier aa0e29a668 CGI: Fix memory leak on error paths 2019-07-09 16:19:41 +02:00
Peter Kokot 49cc2a63b3 Remove some more Apache 1 left overs
- warning in configure.ac is relevant for the sapi/apache
- errors output redirected to /dev/null when checking Apache version
2019-07-07 12:09:19 +02:00
George Wang 6a403504e7 Merge branch 'PHP-7.3' into PHP-7.4 2019-07-04 12:14:48 -04:00
George Wang 3ec8776940 Merge branch 'PHP-7.2' into PHP-7.3 2019-07-04 12:04:08 -04:00
George Wang 32af676bd9 Updated to LiteSpeed SAPI V7.4.3
Increased response header count limit from 100 to 1000.
Added crash handler to cleanly shutdown PHP request.
Added CloudLinux mod_lsapi mode
Fixed bug #76058
2019-07-04 12:03:21 -04:00
Joe Watkins 30019f47a5 improvements to cli server 2019-07-03 16:30:51 +02:00
Nikita Popov af3e2d3186 Initialize last_line in phpdbg globals 2019-07-01 16:14:45 +02:00
Joe Watkins 82effb3fc7 implement support for workers in cli-server on platforms supporting fork 2019-06-29 05:27:35 +02:00
Nikita Popov 45ab57339e Use strcmp() in phpdbg_eol_global_update
memcmp() only makes sense on equal length strings, and here we don't
know anything about the length of the input.
2019-06-28 17:24:30 +02:00
Nikita Popov cf29c0f212 Remove phpdbg_xml_asprintf()
Clang doesn't like the use of promoted zend_bool in va_start. As
the function isn't used anyway, I'm simply dropping it...
2019-06-28 16:59:52 +02:00
Nikita Popov 54dd762f59 Set up asan+ubsan scheduled build on azure
Also adds an --asan flag to run-tests.php to setup all the necessary
environment variables. Some tests are marked as skipped because they
are incompatible with asan or too slow.

I'm basing this on the DEBUG_ZTS build, which seems to give us the
most mileage.
2019-06-28 15:00:54 +02:00
Nikita Popov 50cce5eb4f Avoid reliance on arena details on phpdbg oplog
Instead of guessing what the address of the first arena allocation
is going to be, embed the sentinel in the oplog_list structure
directly.
2019-06-28 14:47:42 +02:00
Joe Watkins 68485f8ab4 implement tsrm_is_shutdown API 2019-06-28 10:27:19 +02:00
Christoph M. Becker bc0db8ce45 Use the portable zend_strndup() instead of strndup() 2019-06-28 10:23:38 +02:00
Nikita Popov 8c4d199851 Fix init_file leak in phpdbg 2019-06-28 09:17:26 +02:00
Nikita Popov c3132781ec Fix phpdbg shutdown order
In particular, make sure that everything using zmm is released
before zmm is shut down. phpdbg currently gets away with this,
because either a) its custom handlers are used and no auto-free
happens or b) the system allocator is used and no auto-free happens.
With the tracking allocator for asan this no longer works.
2019-06-27 14:20:51 +02:00
Nikita Popov 2149ed7072 Don't use zmm for PHPDBG_G(exec)
Uses system allocator when backing up settings ... let's avoid
unnecessary confusion.
2019-06-27 14:20:30 +02:00
Peter Kokot 2079b09854 Clean headers checks
Some headers were checked multiple times in the main configure.ac file
and in the bundled extensions or SAPIs themselves. Also many of these
checks are then used accross other extensions or SAPIs so a central
configure.ac makes most sense for these checks.
2019-06-27 02:45:09 +02:00
Nikita Popov 698dd32b03 Fix fpm limit_extensions leak
The logic here is somewhat ugly because the worker pool structure
gets freed early, so we need to explicitly transfer ownership.
2019-06-26 11:40:39 +02:00
Nikita Popov 42b22d3a94 Fix out of bounds write in phpdbg
It seems that this code has a peculiar interpretation of "len",
where it actually points to the last character, not one past it.
So we need +1 here for that extra char and another +1 for the
terminating null byte.
2019-06-25 14:28:58 +02:00
Christoph M. Becker 94df6dc3fd Split test case
This test is failing on AppVeyor almost all of the time, so splitting
it seems appropriate.  This also allows us to rid php_cli_server_stop()
which was only used by this test case.
2019-06-24 14:08:11 +02:00
Nikita Popov 152ccfb08d Fix stack leak in phpdbg 2019-06-21 17:01:25 +02:00
Nikita Popov a7bcfee9c9 Fix prompt leak in phpdbg 2019-06-21 17:01:18 +02:00
Joe Watkins eda5d8afcf refactor a little more to add some more useful error messages and raise the limits on waiting for slow machines 2019-06-19 11:41:24 +02:00
Joe Watkins d6480fa231 Separate check for process creation and ability to accept connections 2019-06-19 11:09:26 +02:00
Freddie Leeman 482784284a Simplify pm.start_servers calculation in docs
This makes it more obvious that this is just the average.
2019-06-17 13:24:22 +02:00
Joe Watkins 116d42d990 bugs in fpm logging #4273 #4007 2019-06-17 07:48:37 +02:00
Joe Watkins dd10bf5450 Merge branch 'mac-tests' into PHP-7.4
* mac-tests:
  fix mac tests on azure
2019-06-14 12:56:08 +02:00
Joe Watkins f16b012116 fix mac tests on azure 2019-06-14 12:55:00 +02:00
Nikita Popov 646b64b119 Fix skipif syntax errors
Apparently I did this only on masster...
2019-06-14 09:29:14 +02:00
Nikita Popov 16f79129c7 Fix unused variables in fpm_env.c 2019-06-12 13:17:25 +02:00
Nikita Popov 852ab5d83f Use %define api.pure instead of %pure-parser
%pure-parser is deprecated. In our case there is no difference between
true & full, as we don't use locations.
2019-06-12 09:26:34 +02:00
Nikita Popov 89b2d88659 Register class before fetching parent
We want the class declaration to be available while compiling the
parent class.
2019-06-11 13:09:33 +02:00
Joe Watkins 9ecc0a4f29 use XFAILIF rather than XFAIL to avoid warnings [ci skip] 2019-06-11 12:55:28 +02:00
Joe Watkins 1e5004060e watchpoints have flaws in implementation 2019-06-10 14:23:37 +02:00
Peter Kokot 2dd6ec07d1 Simplify LiteSpeed SAPI module version
This patch syncs versioning of the LiteSpeed SAPI module by making it in
sync with the rest of the bundled PHP extensions and SAPIs.

Closes #4145
2019-06-09 22:32:47 +02:00
Peter Kokot 5b36c9fef6 Use PHP_VERSION for zend modules
Closes #4147
2019-06-09 22:32:47 +02:00