#
1cf98db4 |
| 10-Sep-2024 |
Niels Dossche <7771979+nielsdos@users.noreply.github.com> |
Deduplicate Proxy-Authorization code from php_stream_url_wrap_http_ex() (#15818) Extracts this code to a separate function to reduce code duplication.
|
#
cfcc2a3f |
| 19-Jul-2024 |
Niels Dossche <7771979+nielsdos@users.noreply.github.com> |
Fix GH-15034: Integer overflow on stream_notification_callback byte_max parameter with files bigger than 2GB We were using atoi, which is only for integers. When the size does not fit in
Fix GH-15034: Integer overflow on stream_notification_callback byte_max parameter with files bigger than 2GB We were using atoi, which is only for integers. When the size does not fit in an integer this breaks. Use ZEND_STRTOUL instead. Also make sure invalid data isn't accidentally parsed into a file size. Closes GH-15035.
show more ...
|
#
c461b600 |
| 24-May-2024 |
Levi Morrison |
refactor: change `zend_is_true` to return `bool` (#14301) Previously this returned `int`. Many functions actually take advantage of the fact this returns exactly 0 or 1. For instance,
refactor: change `zend_is_true` to return `bool` (#14301) Previously this returned `int`. Many functions actually take advantage of the fact this returns exactly 0 or 1. For instance, `main/streams/xp_socket.c` does: sockopts |= STREAM_SOCKOP_IPV6_V6ONLY_ENABLED * zend_is_true(tmpzval); And `Zend/zend_compile.c` does: child = &ast->child[2 - zend_is_true(zend_ast_get_zval(ast->child[0]))]; I changed a few places trivially from `int` to `bool`, but there are still many places such as the object handlers which return `int` that should eventually be `bool`.
show more ...
|
#
47a199c8 |
| 29-Feb-2024 |
Gina Peter Banyard |
Add http_(get|clear)_last_reponse_headers() functions (#12500) This is to provide an alternative to the $http_response_header magic variable RFC: https://wiki.php.net/rfc/http-last-
Add http_(get|clear)_last_reponse_headers() functions (#12500) This is to provide an alternative to the $http_response_header magic variable RFC: https://wiki.php.net/rfc/http-last-response-headers
show more ...
|
#
810507ab |
| 02-Jun-2023 |
George Peter Banyard |
http_fopen_wrapper: fix [-Wanalyzer-deref-before-check] warning: check of ‘*resource.scheme’ for NULL after already dereferencing it [-Wanalyzer-deref-before-check] 186 |
http_fopen_wrapper: fix [-Wanalyzer-deref-before-check] warning: check of ‘*resource.scheme’ for NULL after already dereferencing it [-Wanalyzer-deref-before-check] 186 | use_ssl = resource->scheme && (ZSTR_LEN(resource->scheme) > 4) && ZSTR_VAL(resource->scheme)[4] == 's'; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Although resource->scheme is already dereferenced on line 163 in the IF condition
show more ...
|
#
1ede3137 |
| 19-May-2023 |
Niels Dossche <7771979+nielsdos@users.noreply.github.com> |
Fix GH-11274: POST/PATCH request via file_get_contents + stream_context_create switches to GET after a HTTP 308 redirect RFC 7231 states that status code 307 should keep the POST method upon
Fix GH-11274: POST/PATCH request via file_get_contents + stream_context_create switches to GET after a HTTP 308 redirect RFC 7231 states that status code 307 should keep the POST method upon redirect. RFC 7538 does the same for code 308. Although it's not mandated by the RFCs that PATCH is also kept (we can choose), it seems like keeping PATCH will be the most consistent and understandable behaviour. This patch also changes an existing test because it was testing for the wrong behaviour. Closes GH-11275.
show more ...
|
#
b33fbbfe |
| 02-Feb-2023 |
Niels Dossche <7771979+nielsdos@users.noreply.github.com> |
Fix GH-10031: [Stream] STREAM_NOTIFY_PROGRESS over HTTP emitted irregularly for last chunk of data It's possible that the server already sent in more data than just the headers. Since th
Fix GH-10031: [Stream] STREAM_NOTIFY_PROGRESS over HTTP emitted irregularly for last chunk of data It's possible that the server already sent in more data than just the headers. Since the stream only accepts progress increments after the headers are processed, the already read data is never added to the process. We account for this by adjusting the progress counter by the difference of already read header data and the body. For the test: Co-authored-by: aetonsi <18366087+aetonsi@users.noreply.github.com> Closes GH-10492.
show more ...
|
#
732d92c0 |
| 28-Apr-2023 |
Javier Eguiluz |
[skip ci] Fix various typos and grammar issues (#11143)
|
#
9d5f2f13 |
| 20-Mar-2023 |
Ilija Tovilo |
Use new ZSTR_INIT_LITERAL macro (#10879)
|
Revision tags: php-8.2.0RC1, php-8.1.10, php-8.0.23 |
|
#
72da4187 |
| 17-Aug-2022 |
Christoph M. Becker |
Fix GH-9316: $http_response_header is wrong for long status line While the reason-phrase in a HTTP response status line is usually short, there is no actual limit specified by the RFCs.
Fix GH-9316: $http_response_header is wrong for long status line While the reason-phrase in a HTTP response status line is usually short, there is no actual limit specified by the RFCs. As such, we must not assume that the line fits into the buffer (which is currently 128 bytes large). Since there is no real need to present the complete status line, we simply read and discard the rest of a long line. Co-authored-by: Tim Düsterhus <timwolla@googlemail.com> Closes GH-9319.
show more ...
|
Revision tags: php-8.0.23RC1, php-8.1.10RC1, php-8.2.0beta3, php-8.2.0beta2, php-8.1.9, php-8.0.22, php-8.1.9RC1, php-8.2.0beta1, php-8.0.22RC1, php-8.0.21, php-8.1.8, php-8.2.0alpha3, php-8.1.8RC1, php-8.2.0alpha2, php-8.0.21RC1, php-8.0.20, php-8.1.7, php-8.2.0alpha1, php-7.4.30, php-8.1.7RC1, php-8.0.20RC1, php-8.1.6, php-8.0.19, php-8.1.6RC1, php-8.0.19RC1, php-8.0.18, php-8.1.5, php-7.4.29, php-8.1.5RC1, php-8.0.18RC1, php-8.1.4, php-8.0.17, php-8.1.4RC1, php-8.0.17RC1, php-8.1.3, php-8.0.16, php-7.4.28, php-8.1.3RC1, php-8.0.16RC1, php-8.1.2, php-8.0.15, php-8.1.2RC1, php-8.0.15RC1, php-8.0.14, php-8.1.1, php-7.4.27, php-8.1.1RC1, php-8.0.14RC1, php-7.4.27RC1, php-8.1.0, php-8.0.13, php-7.4.26, php-7.3.33, php-8.1.0RC6, php-7.4.26RC1, php-8.0.13RC1, php-8.1.0RC5, php-7.3.32, php-7.4.25, php-8.0.12, php-8.1.0RC4, php-8.0.12RC1, php-7.4.25RC1, php-8.1.0RC3, php-8.0.11, php-7.4.24, php-7.3.31, php-8.1.0RC2, php-7.4.24RC1, php-8.0.11RC1, php-8.1.0RC1, php-7.4.23, php-8.0.10, php-7.3.30, php-8.1.0beta3, php-8.0.10RC1, php-7.4.23RC1, php-8.1.0beta2, php-8.0.9, php-7.4.22, php-8.1.0beta1, php-7.4.22RC1, php-8.0.9RC1, php-8.1.0alpha3, php-7.4.21, php-7.3.29, php-8.0.8, php-8.1.0alpha2, php-7.4.21RC1, php-8.0.8RC1, php-8.1.0alpha1, php-8.0.7, php-7.4.20, php-8.0.7RC1, php-7.4.20RC1, php-8.0.6, php-7.4.19, php-7.4.18, php-7.3.28, php-8.0.5, php-8.0.5RC1, php-7.4.18RC1, php-8.0.4RC1, php-7.4.17RC1, php-8.0.3, php-7.4.16, php-8.0.3RC1, php-7.4.16RC1, php-8.0.2, php-7.4.15, php-7.3.27, php-8.0.2RC1, php-7.4.15RC2, php-7.4.15RC1, php-8.0.1, php-7.4.14, php-7.3.26, php-7.4.14RC1, php-8.0.1RC1, php-7.3.26RC1, php-8.0.0, php-7.3.25, php-7.4.13, php-8.0.0RC5, php-7.4.13RC1, php-8.0.0RC4, php-7.3.25RC1, php-7.4.12, php-8.0.0RC3, php-7.3.24, php-8.0.0RC2, php-7.4.12RC1, php-7.3.24RC1, php-7.2.34, php-8.0.0rc1, php-7.4.11, php-7.3.23, php-8.0.0beta4, php-7.4.11RC1, php-7.3.23RC1, php-8.0.0beta3, php-7.4.10, php-7.3.22, php-8.0.0beta2, php-7.3.22RC1, php-7.4.10RC1, php-8.0.0beta1, php-7.4.9, php-7.2.33, php-7.3.21, php-8.0.0alpha3, php-7.4.9RC1, php-7.3.21RC1, php-7.4.8, php-7.2.32, php-8.0.0alpha2, php-7.3.20, php-8.0.0alpha1, php-7.4.8RC1, php-7.3.20RC1, php-7.4.7, php-7.3.19, php-7.4.7RC1, php-7.3.19RC1 |
|
#
5171cb43 |
| 20-May-2020 |
George Peter Banyard |
Fix [-Wundef] warnings in standard extension
|
#
c96be7b8 |
| 24-Sep-2021 |
Tim Starling |
Use ASCII lower case for misc case folding Use ASCII case conversion instead of locale-dependent case conversion in the following places: * grapheme_stripos() and grapheme_strri
Use ASCII lower case for misc case folding Use ASCII case conversion instead of locale-dependent case conversion in the following places: * grapheme_stripos() and grapheme_strripos() in the "fast" path * ldap_get_entries() * oci_pconnect() for case folding of parameters when constructing a key into the connection or session pool * SoapClient: case folding of function names * get_meta_tags(): case conversion of property names * http stream wrapper: header names * phpinfo(): anchor names * php_verror(): docref URLs * rfc1867.c: Content-Type boundary parameter name * streams.c: stream protocol names Using locale-dependent case folding for these cases is either unnecessary or actively incorrect. These functions could have misbehaved when used with certain locales (e.g. Turkish). Closes GH-7511.
show more ...
|
#
aff36587 |
| 29-Jun-2021 |
Patrick Allaert |
Fixed some spaces used instead of tabs
|
#
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 ...
|
#
12155632 |
| 15-Apr-2021 |
twosee |
Micro optimizations for http_fopen_wrapper.c (#6864)
|
#
5787f91c |
| 05-Mar-2021 |
manuel |
Fix #80838: HTTP wrapper waits for HTTP 1 response after HTTP 101 Don't wait for further responses after a HTTP 101 (Switching Protocols) response Closes GH-6730.
|
#
51e2015a |
| 23-Feb-2021 |
Christoph M. Becker |
Fix #78719: http wrapper silently ignores long Location headers When opening HTTP streams, and reading the headers, we currently discard header lines longer than `HTTP_HEADER_BLOCK_SIZE`
Fix #78719: http wrapper silently ignores long Location headers When opening HTTP streams, and reading the headers, we currently discard header lines longer than `HTTP_HEADER_BLOCK_SIZE` (1024 bytes). While this is not generally forbidden by RFC 7230, section 3.2.5, it is not generally allowed either, since that may change the "message framing or response semantics". We thus fix this by allowing arbitrarily long header lines. Closes GH-6720.
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 ...
|
#
2693f799 |
| 28-Oct-2020 |
Dmitry Stogov |
Don't force rebuild of symbol table, when populating $http_response_header variable by the HTTP stream wrapper
|
#
1c157d3f |
| 20-Oct-2020 |
Nikita Popov |
Fixed bug #80256 Remove the transfer_encoding stream filter immediately when we destroy the old stream, to make sure it doesn't get attached to the new stream.
|
#
f9f769d4 |
| 11-Jun-2020 |
Rowan Tommins |
Make http stream wrapper advertise HTTP/1.1 by default In practice, we always act as an HTTP/1.1 client, for compatibility with servers which ignore protocol version. Sending the version
Make http stream wrapper advertise HTTP/1.1 by default In practice, we always act as an HTTP/1.1 client, for compatibility with servers which ignore protocol version. Sending the version in the request will avoid problems with servers which don't ignore it. HTTP/1.0 can still be forced using a stream context option. Closes GH-5899.
show more ...
|
Revision tags: php-7.4.6, php-7.2.31, php-7.4.6RC1, php-7.3.18RC1, php-7.2.30, php-7.4.5, php-7.3.17, php-7.4.5RC1, php-7.3.17RC1, php-7.3.18, php-7.4.4, php-7.2.29, php-7.3.16, php-7.4.4RC1, php-7.3.16RC1 |
|
#
56cdbe63 |
| 24-Feb-2020 |
Nikita Popov |
Don't treat any WS as start of header Check that the header occurs after \n, not other whitespace characters.
|
#
3d9c0236 |
| 24-Feb-2020 |
Nikita Popov |
Reduce code duplication in HTTP header checks
|
#
cc704f5b |
| 24-Feb-2020 |
Nikita Popov |
Reduce code duplication in HTTP header checks
|
#
d0d60503 |
| 24-Feb-2020 |
Miguel Xavier Penha Neto |
Fixes #79265: Improper injection of Host header when using fopen for http requests Check all occurrences of the string "host:" (and other headers), not just the first one.
|