History log of /PHP-8.1/sapi/cli/php_cli_server.c (Results 1 – 25 of 297)
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
# f6ac08c6 05-Oct-2023 coppolafab

php_cli_server: ensure single date header is present

Currently the PHP Development Server appends a Date header in the
response, despite already set from user code.

Added a chec

php_cli_server: ensure single date header is present

Currently the PHP Development Server appends a Date header in the
response, despite already set from user code.

Added a check condition before append the header, and a test file.

Closes GH-12363.

show more ...


# af77d3b8 21-Jul-2023 Niels Dossche <7771979+nielsdos@users.noreply.github.com>

Fix GH-11716: cli server crashes on SIGINT when compiled with ZEND_RC_DEBUG=1

Closes GH-11757.


# d52f0451 08-Oct-2022 Ilija Tovilo

Fix cli server blocking on accept when using multiple workers

Fixes GH-9400
Closes GH-9693


# 789a37f1 13-Jul-2022 guoyiyuan

Prevent potential buffer overflow for large value of php_cli_server_workers_max

Fixes #8989.
Closes #9000.


# 3bf4098e 30-May-2022 George Peter Banyard

Refactor (again) CLI SAPI server_client struct to use zend_string* (#8605)

This time in a way which works under a RC Debug build.


Revision tags: php-8.1.7RC1
# 82d407b7 21-May-2022 Nikita Popov

Revert "Refactor CLI SAPI php_cli_server_client struct to use zend_string (#8522)"

This reverts commit 9b19d9043256427b54c65ac5a3b886d03cf06f2d.

This has broken the ZEND_RC_DEBUG bu

Revert "Refactor CLI SAPI php_cli_server_client struct to use zend_string (#8522)"

This reverts commit 9b19d9043256427b54c65ac5a3b886d03cf06f2d.

This has broken the ZEND_RC_DEBUG build.

show more ...


# 9b19d904 15-May-2022 George Peter Banyard

Refactor CLI SAPI php_cli_server_client struct to use zend_string (#8522)

This is a stepping stone in converting more pairs of ``char*`` and ``size_t`` to ``zend_string*`` across the CLI SAP

Refactor CLI SAPI php_cli_server_client struct to use zend_string (#8522)

This is a stepping stone in converting more pairs of ``char*`` and ``size_t`` to ``zend_string*`` across the CLI SAPI.

Also amend the CLI SAPI test setup to output it's content when it crashes/errors so that one can debug ASAN/UBSAN/MSAN violations.

Drive-by MSAN fix.

Co-authored-by: Arnaud Le Blanc <arnaud.lb@gmail.com>

show more ...


# d4e24e72 10-May-2022 George Peter Banyard

Fix Windows build

sapi\cli\php_cli_server.c(2637): warning C4133: 'function': incompatible types - from 'zend_result (__cdecl *)(void *,php_socket_t,int)' to 'int (__cdecl *)(void *,php_sock

Fix Windows build

sapi\cli\php_cli_server.c(2637): warning C4133: 'function': incompatible types - from 'zend_result (__cdecl *)(void *,php_socket_t,int)' to 'int (__cdecl *)(void *,php_socket_t,int)'

Probably a good idea to make GCC complain about these sort of issues too

show more ...


# 0fad4d1d 10-May-2022 George Peter Banyard

Fix ASAN build


# 9601475e 09-May-2022 George Peter Banyard

Minimal refactoring of CLI SAPI (#8519)

More specific types, some cleanup and voidifying functions which always return ``SUCCESS``


# b5db594f 27-Apr-2022 George Peter Banyard

Refacto php_module_startup() (#8303)

It only ever uses at most 1 additional modules


Revision tags: php-8.1.4RC1, php-8.1.3, php-8.1.2RC1, php-8.1.0, php-7.3.33
# 90b7bde6 03-Nov-2021 Dmitry Stogov

Use more compact representation for packed arrays.

- for packed arrays we store just an array of zvals without keys.
- the elements of packed array are accessible throuf as ht->arPacked[

Use more compact representation for packed arrays.

- for packed arrays we store just an array of zvals without keys.
- the elements of packed array are accessible throuf as ht->arPacked[i]
instead of ht->arData[i]
- in addition to general ZEND_HASH_FOREACH_* macros, we introduced similar
familied for packed (ZEND_HASH_PACKED_FORECH_*) and real hashes
(ZEND_HASH_MAP_FOREACH_*)
- introduced an additional family of macros to access elements of array
(packed or real hashes) ZEND_ARRAY_ELEMET_SIZE, ZEND_ARRAY_ELEMET_EX,
ZEND_ARRAY_ELEMET, ZEND_ARRAY_NEXT_ELEMENT, ZEND_ARRAY_PREV_ELEMENT
- zend_hash_minmax() prototype was changed to compare only values

Because of smaller data set, this patch may show performance improvement
on some apps and benchmarks that use packed arrays. (~1% on PHP-Parser)

TODO:
- sapi/phpdbg needs special support for packed arrays (WATCH_ON_BUCKET).
- zend_hash_sort_ex() may require converting packed arrays to hash.

show more ...


Revision tags: php-7.3.32, php-7.3.31
# 28e882a1 17-Sep-2021 Nikita Popov

Fix null pointer ubsan warning

Don't pass null pointer to memmove, even with zero length.


# ef2fd0e5 24-Nov-2021 Remi Collet

fix [-Wstrict-prototypes] buid warnings


# cdcdb330 03-Oct-2021 Lauri Kenttä

Fix #81496: CLI server logs wrong request method


Revision tags: php-7.3.30
# be2df43b 30-Jul-2021 Christoph M. Becker

Fix #78919: CLI server: insufficient cleanup if request startup fails

We need to run the full `php_cli_server_request_shutdown()` in case of
failing `php_cli_server_request_startup()`.

Fix #78919: CLI server: insufficient cleanup if request startup fails

We need to run the full `php_cli_server_request_shutdown()` in case of
failing `php_cli_server_request_startup()`.

Patch contributed by @cataphract.

Closes GH-7322.

show more ...


# efbb2198 12-Jul-2021 Nikita Popov

Return value from ZEND_ATOL

Instead of assigning it as part of the macro itself, which makes
usage quite awkward.


# d7db5701 30-Jun-2021 Christoph M. Becker

Fix #73630: Built-in Weberver - overwrite $_SERVER['request_uri']

The built-in Webserver's `on_path`, `on_query_string` and `on_url`
callbacks may be called multiple times from the parse

Fix #73630: Built-in Weberver - overwrite $_SERVER['request_uri']

The built-in Webserver's `on_path`, `on_query_string` and `on_url`
callbacks may be called multiple times from the parser; we must not
simply replace the old values, but need to concatenate the new values
instead.

This appears to be tricky for `on_path` due to the path normalization,
so we fail if the function is called again.

The built-in Webserver logs errors during request parsing to stderr,
but this is ignored by the php_cli_server framework, and apparently the
Webserver does not send a resonse at all in such cases (instead of an
4xx). Thus we can only check that a request with an overly long path
fails.

Closes GH-7207.

show more ...


Revision tags: php-7.3.29
# c40231af 12-May-2021 George Peter Banyard

Mark various functions with void arguments.

This fixes a bunch of [-Wstrict-prototypes] warning,
because in C func() and func(void) have different semantics.


# 01b3fc03 06-May-2021 KsaR

Update http->https in license (#6945)

1. Update: http://www.php.net/license/3_01.txt to https, as there is anyway server header "Location:" to https.
2. Update few license 3.0 to 3.01 as

Update http->https in license (#6945)

1. Update: http://www.php.net/license/3_01.txt to https, as there is anyway server header "Location:" to https.
2. Update few license 3.0 to 3.01 as 3.0 states "php 5.1.1, 4.1.1, and earlier".
3. In some license comments is "at through the world-wide-web" while most is without "at", so deleted.
4. fixed indentation in some files before |

show more ...


Revision tags: php-7.3.28
# b66eb866 23-Apr-2021 Nikita Popov

Convert last_error_file to zend_string


Revision tags: php-7.3.27, php-7.3.26, php-7.3.26RC1, php-7.3.25, php-7.3.25RC1, php-7.3.24, php-7.3.24RC1
# 5caaf40b 29-Sep-2020 George Peter Banyard

Introduce pseudo-keyword ZEND_FALLTHROUGH

And use it instead of comments


# c732ab40 16-Mar-2021 Dmitry Stogov

Change Zend Stream API to use zend_string* instead of char*.

This allows to eliminate re-calculation of string lenght and hash value.
See the detailed list of changes in UPGRADING.INTERN

Change Zend Stream API to use zend_string* instead of char*.

This allows to eliminate re-calculation of string lenght and hash value.
See the detailed list of changes in UPGRADING.INTERNALS.

show more ...


# 5cb25a2d 04-Feb-2021 Nikita Popov

Fix CLI server worker support

If we create separate listening sockets in each worker using
SO_REUSEADDR, then an incoming connection may be load-balanced
to a process that is already

Fix CLI server worker support

If we create separate listening sockets in each worker using
SO_REUSEADDR, then an incoming connection may be load-balanced
to a process that is already busy, either due to a long-running
request, or because it is a recursive request (in which case we
would deadlock).

Instead, only create one listening socket, and only create worker
forks afterwards. This way the incoming request will be served
by one of the workers that is currently listening for an incoming
connection.

show more ...


# 3e01f5af 15-Jan-2021 Nikita Popov

Replace zend_bool uses with bool

We're starting to see a mix between uses of zend_bool and bool.
Replace all usages with the standard bool type everywhere.

Of course, zend_bool

Replace zend_bool uses with bool

We're starting to see a mix between uses of zend_bool and bool.
Replace all usages with the standard bool type everywhere.

Of course, zend_bool is retained as an alias.

show more ...


12345678910>>...12