History log of /PHP-8.3/ext/soap/soap.c (Results 1 – 25 of 545)
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
# 28290655 07-Aug-2024 Niels Dossche <7771979+nielsdos@users.noreply.github.com>

Revert "Fix bug #69280: SoapClient classmap doesn't support fully qualified class name (#14398)"

This reverts commit 476706165a227ea6b1d73299b9b6486a6ca073a9.

Although the fix is co

Revert "Fix bug #69280: SoapClient classmap doesn't support fully qualified class name (#14398)"

This reverts commit 476706165a227ea6b1d73299b9b6486a6ca073a9.

Although the fix is correct, people are relying on the bug and their
code stopped working, see GH-15252.

show more ...


# 11fbe880 05-Aug-2024 Niels Dossche <7771979+nielsdos@users.noreply.github.com>

Fix SoapFault property destruction

Two issues:
1) We should not modify the object when we pass invalid values
2) We should reset the properties to their default value otherwise we

Fix SoapFault property destruction

Two issues:
1) We should not modify the object when we pass invalid values
2) We should reset the properties to their default value otherwise we
get a UAF.

Regressed in df219ccf9d6be8302eef3ab6e26fd00fbd2fef71

Closes GH-15248.

show more ...


# df219ccf 16-Jun-2024 Gina Peter Banyard

ext/soap: Fix memory leaks when calling SoapFault::__construct() twice


# 47670616 01-Jun-2024 Niels Dossche <7771979+nielsdos@users.noreply.github.com>

Fix bug #69280: SoapClient classmap doesn't support fully qualified class name (#14398)

There's a hash table that maps type names to class name, but names with
a leading backslash are no

Fix bug #69280: SoapClient classmap doesn't support fully qualified class name (#14398)

There's a hash table that maps type names to class name, but names with
a leading backslash are not supported. The engine has logic to strip
away the leading backslash that we should replicate here.

It works by checking if we need to make an actual copy in case an
unexpected (e.g. invalid data or leading backslash) situations are
detected. Upon making a copy we normalize the data in the table.

Furthermore, previously the code assumed that the key was always valid
and that the structure was a non-packed hash table. This isn't
necessarily the case. The new code fixes this as well.

Closes GH-14398.

show more ...


# 18233e0f 31-May-2024 Niels Dossche <7771979+nielsdos@users.noreply.github.com>

Fix memory leaks with string function name lookups

There's a few leaks where the string is copied for lowercasing but not released.
Where possible, use the _lc functionality of zend_hash

Fix memory leaks with string function name lookups

There's a few leaks where the string is copied for lowercasing but not released.
Where possible, use the _lc functionality of zend_hash to do the lookup
to avoid the leaks that currently exist with the manual lowercasing.

Closes GH-14390.

show more ...


# 89c4db9c 30-May-2024 Niels Dossche <7771979+nielsdos@users.noreply.github.com>

Fix reading zlib ini settings in ext-soap

zend_ini_long() actually expects the length without the NUL byte, but
we're passing the length *with* the NUL byte. This mess can actually be

Fix reading zlib ini settings in ext-soap

zend_ini_long() actually expects the length without the NUL byte, but
we're passing the length *with* the NUL byte. This mess can actually be
avoided altogether by using INI_INT, so use that instead.

Closes GH-14382.

show more ...


# 23912f55 30-May-2024 Niels Dossche <7771979+nielsdos@users.noreply.github.com>

Fix memory leak if calling SoapServer::setClass() twice

Closes GH-14381.


# 51bb9c2c 30-May-2024 Niels Dossche <7771979+nielsdos@users.noreply.github.com>

Fix memory leak if calling SoapServer::setObject() twice

Closes GH-14380.


# 6aa66e08 31-May-2024 Niels Dossche <7771979+nielsdos@users.noreply.github.com>

Fix missing error restore code in ext-soap (#14379)

The begin and end macros should be paired, but some of the end macro
calls were missing.


# d5ad7510 08-Jun-2023 George Peter Banyard

More usage of known zend_str instead of C string (#11381)


# 9d5f2f13 20-Mar-2023 Ilija Tovilo

Use new ZSTR_INIT_LITERAL macro (#10879)


# 7936c808 23-Jan-2023 Máté Kocsis

Fix GH-8329 Print true/false instead of bool in error and debug messages (#8385)


# e440e37f 13-Oct-2022 Christoph M. Becker

Fix GH-9720: Null pointer dereference while serializing the response

When traversing the result array, we need to cater to `param_name`
possibly being `NULL`. Prior to PHP 7.0.0, this w

Fix GH-9720: Null pointer dereference while serializing the response

When traversing the result array, we need to cater to `param_name`
possibly being `NULL`. Prior to PHP 7.0.0, this was implicitly done
because `param_name` was of type `char*`.

Closes GH-9739.

show more ...


# a01dd9fe 14-Sep-2022 Bob Weinand

Revert "Port all internally used classes to use default_object_handlers"

This reverts commit 94ee4f9834743ca74f6c9653863273277ce6c61a.

The commit was a bit too late to be included i

Revert "Port all internally used classes to use default_object_handlers"

This reverts commit 94ee4f9834743ca74f6c9653863273277ce6c61a.

The commit was a bit too late to be included in PHP 8.2 RC1. Given it's a massive ABI break, we decide to postpone the change to PHP 8.3.

show more ...


Revision tags: php-8.2.0RC1, php-8.1.10, php-8.0.23
# 94ee4f98 24-Aug-2022 Bob Weinand

Port all internally used classes to use default_object_handlers

Signed-off-by: Bob Weinand <bobwei9@hotmail.com>


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
# a05a6c55 25-Jul-2022 Máté Kocsis

Declare ext/soap constants in stubs (#9124)


Revision tags: 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
# 8735ae9d 18-May-2022 robertnisipeanu

Fix GH-8578: Error on wrong parameter on SoapHeader constructor

Closes GH-8579.


Revision tags: 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
# c5d6f59e 28-Nov-2021 Nikita Popov

Use custom object instead of resource for soap server service

The "service" resource is a purely internal structure used by
SoapServer, which userland code cannot interact with. Instead

Use custom object instead of resource for soap server service

The "service" resource is a purely internal structure used by
SoapServer, which userland code cannot interact with. Instead of
storing it as a resource in an object propperty, use a custom
object structure instead.

show more ...


Revision tags: php-8.1.0, php-8.0.13, php-7.4.26, php-7.3.33, php-8.1.0RC6
# 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.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
# 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 ...


Revision tags: 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
# 841d0b30 20-Aug-2021 Nikita Popov

Slightly clean up cookies handling

Make the property always an array with an empty array default.
Properly separate the array on modification to compensate.


# 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


# b3b16584 20-Aug-2021 Nikita Popov

Remove dead code

This was checking for the headerfault property, but not actually
doing anything with it.


# aa4898ef 20-Aug-2021 Nikita Popov

Use separate property to request digit auth

Currently, _digest is used both to request that digest auth be
used (_digest == null) and to later store the _digest parameters.

This

Use separate property to request digit auth

Currently, _digest is used both to request that digest auth be
used (_digest == null) and to later store the _digest parameters.

This relies on the ability to distinguish between _digest being
null and it being not set, which is not present with declared
properties. (Well, technically it is, we could just leave it
uninitialized, but that would be non-idiomatic.)

Resolve this by splitting into separate _use_digest and _digest
properties.

show more ...


12345678910>>...22