#
72a2cbcc |
| 09-Sep-2024 |
Niels Dossche <7771979+nielsdos@users.noreply.github.com> |
Fix bug #73182: PHP SOAPClient does not support stream context HTTP headers in array form This code is modelled after how `http_fopen_wrapper.c` does things, which apparently is just loo
Fix bug #73182: PHP SOAPClient does not support stream context HTTP headers in array form This code is modelled after how `http_fopen_wrapper.c` does things, which apparently is just looping over the array and handling each string the same way as if we passed a header string directly. Also fixes a potential crash in `php_sdl.c` but without adding support for header arrays there (yet) because the code is untested. Closes GH-15817.
show more ...
|
#
0a39890c |
| 01-Dec-2023 |
Niels Dossche <7771979+nielsdos@users.noreply.github.com> |
Fix libxml2 2.12 build due to API breaks See https://github.com/php/php-src/actions/runs/7062192818/job/19225478601 |
#
4eee81b5 |
| 30-Nov-2023 |
Niels Dossche <7771979+nielsdos@users.noreply.github.com> |
Fix GH-12838: [SOAP] Temporary WSDL cache files not being deleted If there are two users that can execute the script that caches a WSDL, but the script is owned by a single user, then th
Fix GH-12838: [SOAP] Temporary WSDL cache files not being deleted If there are two users that can execute the script that caches a WSDL, but the script is owned by a single user, then the caching code will name the cached file with the file owner username and a hash of the uri. When one of the two tries to rename the file created by the other process, this does not work because it has no permission to do so. This then leaves temporary files floating in the temp directory. To fix the immediate problem, unlink the file after rename has failed. On the long term, this has to be fixed by taking the username of the process instead of the username of the file owner. Closes GH-12841.
show more ...
|
#
e39538be |
| 26-Oct-2023 |
Niels Dossche <7771979+nielsdos@users.noreply.github.com> |
Merge branch 'PHP-8.1' into PHP-8.2 * PHP-8.1: Fix bug #75306: Memleak in SoapClient
|
#
27797a26 |
| 18-Oct-2023 |
Niels Dossche <7771979+nielsdos@users.noreply.github.com> |
Fix bug #75306: Memleak in SoapClient Setting the stream context via php_stream_context_to_zval() will increase the reference count. So if the new context is created, then it will en
Fix bug #75306: Memleak in SoapClient Setting the stream context via php_stream_context_to_zval() will increase the reference count. So if the new context is created, then it will end up with a reference count of 2 while it should be 1. Credits to cmb for the analysis. I arrived at the same patch as he did. Closes GH-12523.
show more ...
|
#
07de4b69 |
| 25-Oct-2023 |
Niels Dossche <7771979+nielsdos@users.noreply.github.com> |
Merge branch 'PHP-8.1' into PHP-8.2 * PHP-8.1: Fix incorrect dtor for persistent sdl->encoders
|
#
9f7f3b20 |
| 24-Oct-2023 |
Niels Dossche <7771979+nielsdos@users.noreply.github.com> |
Fix incorrect dtor for persistent sdl->encoders Closes GH-12515. |
#
1b166462 |
| 19-Oct-2023 |
Niels Dossche <7771979+nielsdos@users.noreply.github.com> |
Merge branch 'PHP-8.1' into PHP-8.2 * PHP-8.1: Fix segfault and assertion failure with refcounted props and arrays Fix incorrect uri check in SOAP caching Fix bug #66150: S
Merge branch 'PHP-8.1' into PHP-8.2 * PHP-8.1: Fix segfault and assertion failure with refcounted props and arrays Fix incorrect uri check in SOAP caching Fix bug #66150: SOAP WSDL cache race condition causes Segmentation Fault
show more ...
|
#
abf562c4 |
| 19-Oct-2023 |
Niels Dossche <7771979+nielsdos@users.noreply.github.com> |
Fix incorrect uri check in SOAP caching If i == 0 then the check will compare 0 bytes. We are supposed to check if the uri is identical. Closes GH-12479. |
#
43e63168 |
| 18-Oct-2023 |
Niels Dossche <7771979+nielsdos@users.noreply.github.com> |
Fix bug #66150: SOAP WSDL cache race condition causes Segmentation Fault When we have two processes both trying to cache a WSDL, they might start writing the data to the same temporary f
Fix bug #66150: SOAP WSDL cache race condition causes Segmentation Fault When we have two processes both trying to cache a WSDL, they might start writing the data to the same temporary file, causing file corruption due to the race condition. Fix this by creating a temporary file first, and then moving it to the final location. If moving fails then we know another process finished caching first. This also fixes #67617 as a consequence of its implementation. Closes GH-12469.
show more ...
|
#
4df3dd76 |
| 08-Jul-2022 |
Arnaud Le Blanc |
Reduce memory allocated by var_export, json_encode, serialize, and other (#8902) smart_str uses an over-allocated string to optimize for append operations. Functions that use smart_str tend
Reduce memory allocated by var_export, json_encode, serialize, and other (#8902) smart_str uses an over-allocated string to optimize for append operations. Functions that use smart_str tend to return the over-allocated string directly. This results in unnecessary memory usage, especially for small strings. The overhead can be up to 231 bytes for strings smaller than that, and 4095 for other strings. This can be avoided for strings smaller than `4096 - zend_string header size - 1` by reallocating the string. This change introduces `smart_str_trim_to_size()`, and calls it in `smart_str_extract()`. Functions that use `smart_str` are updated to use `smart_str_extract()`. Fixes GH-8896
show more ...
|
#
08d1593c |
| 23-May-2022 |
Christoph M. Becker |
Merge branch 'PHP-8.1' * PHP-8.1: Fix GH-8538: SoapClient may strip parts of nmtokens
|
#
ee9a3fa7 |
| 23-May-2022 |
Christoph M. Becker |
Merge branch 'PHP-8.0' into PHP-8.1 * PHP-8.0: Fix GH-8538: SoapClient may strip parts of nmtokens
|
#
2a13304b |
| 12-May-2022 |
Christoph M. Becker |
Fix GH-8538: SoapClient may strip parts of nmtokens When stripping the namespace prefix, we can assume that this does not contain any colons, while the rest of the name may contain colon
Fix GH-8538: SoapClient may strip parts of nmtokens When stripping the namespace prefix, we can assume that this does not contain any colons, while the rest of the name may contain colons. Hence we must not use `strrchr()` but rather `strchr()` instead. Closes GH-8543.
show more ...
|
#
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 ...
|
#
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 ...
|
#
50484b59 |
| 20-Aug-2021 |
Nikita Popov |
Move derefs into accessor macros These derefs are mostly there to be defensive, but clutter the code somewhat. Move them directly into the access macros. |
#
e6c6abf6 |
| 19-Aug-2021 |
Nikita Popov |
Declare remaining SoapClient properties |
#
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 ...
|
#
6f38a539 |
| 26-Feb-2021 |
Patrick Allaert |
Remove useless conditional #ifdef Closes GH-6737 Signed-off-by: George Peter Banyard <girgias@php.net> |
#
9576a2ad |
| 02-Feb-2021 |
Nikita Popov |
Merge branch 'PHP-8.0' * PHP-8.0: Fix persistent leak on load_wsdl_ex failure
|
#
f1a988af |
| 02-Feb-2021 |
Nikita Popov |
Merge branch 'PHP-7.4' into PHP-8.0 * PHP-7.4: Fix persistent leak on load_wsdl_ex failure
|
#
51d76c34 |
| 02-Feb-2021 |
Nikita Popov |
Fix persistent leak on load_wsdl_ex failure Move the load_wsdl_ex call into the zend_try that destroys the docs hash table. The wsdl will be inserted into docs early on, and will thu
Fix persistent leak on load_wsdl_ex failure Move the load_wsdl_ex call into the zend_try that destroys the docs hash table. The wsdl will be inserted into docs early on, and will thus be released on subsequent bailout.
show more ...
|
#
800685e2 |
| 01-Feb-2021 |
Nikita Popov |
Merge branch 'PHP-8.0' * PHP-8.0: Fix build crc32 mac build fix
|