1
0
mirror of https://github.com/php/php-src.git synced 2026-04-29 19:23:22 +02:00
Commit Graph

244 Commits

Author SHA1 Message Date
Niels Dossche 92e4e8bdf4 Fix #49278: SoapClient::__getLastResponseHeaders returns NULL if wsdl operation !has output
Instead of early exiting, process the headers if tracing is enabled, and
exit after that.

Closes GH-12609.
2023-11-06 19:04:15 +01:00
Niels Dossche 53218b1a32 Mitigate #51561: SoapServer with a extented class and using sessions, lost the setPersistence()
The problem is that in the testcase, the session is started before the
parent class is loaded. This causes an incomplete class in the session
storage. Then in the soap code the check
`Z_OBJCE_P(tmp_soap_p) == service->soap_class.ce` fails because it is
the incomplete class. It is a silent failure.

We cannot fix this easily. But we should let the user know something is
wrong, because it leaves them confused otherwise. So emit an error to
let them know and suggest a fix.

Closes GH-12540.
2023-10-29 12:56:50 +01:00
Niels Dossche 1b16646270 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
2023-10-19 18:32:01 +02:00
Niels Dossche deebb68612 Fix segfault and assertion failure with refcounted props and arrays
Closes GH-12478.
2023-10-19 18:29:13 +02:00
Máté Kocsis adb45a63c0 Fix GH-9186 @strict-properties can be bypassed using unserialization (#9354)
* Emit deprecation warnings when adding dynamic properties to classes during unserialization - this will become an Error in php 9.0.
  (Adding dynamic properties in other contexts was already a deprecation warning - the use case of unserialization was overlooked)
* Throw an error when attempting to add a dynamic property to a `readonly` class when unserializing
* Add new serialization methods `__serialize`/`__unserialize` for SplFixedArray to avoid creating deprecated dynamic
  properties that would then be added to the backing fixed-size array
* Don't add named dynamic/declared properties (e.g. $obj->foo) of SplFixedArray to the backing array when unserializing
* Update tests to declare properties or to expect the deprecation warning
* Add news entry

Co-authored-by: Tyson Andre <tysonandre775@hotmail.com>
2022-08-30 07:46:32 -04:00
Nikita Popov 902d64390e Deprecate implicit dynamic properties
Writing to a proprety that hasn't been declared is deprecated,
unless the class uses the #[AllowDynamicProperties] attribute or
defines __get()/__set().

RFC: https://wiki.php.net/rfc/deprecate_dynamic_properties
2021-11-26 14:10:11 +01:00
Nikita Popov 8b561d33dc Declare properties in SOAP tests
In preparation for
https://wiki.php.net/rfc/deprecate_dynamic_properties.
2021-11-10 11:00:37 +01:00
Nikita Popov e6c6abf6b4 Declare remaining SoapClient properties 2021-08-20 12:50:19 +02:00
Nikita Popov 44befbdc01 Don't convert Error exception to SoapFault
Error exceptions should generally not be converted into domain-
specific exception types. They indicate programming errors that
should not be handled locally.
2021-08-20 10:06:11 +02:00
Nikita Popov 018cb891cf Declare some SoapClient properties
This is only a subset of all properties for now (those without
underscore).
2021-08-19 16:15:41 +02:00
Nikita Popov c58c926034 Declare SoapVar properties 2021-08-19 12:35:37 +02:00
Nikita Popov f4865010a8 Add missing type declarations in soap tests 2021-05-26 12:21:45 +02:00
Máté Kocsis 8ae4b56027 Declare tentative return types for ext/soap
Closes GH-7001
2021-05-26 12:18:51 +02:00
Nikita Popov 77201d7013 Avoid accessing localhost in some soap tests
On some systems, this can make these tests very slow, as they end
up waiting for a timeout.

Instead intercept the sent request using __doRequest().
2021-05-19 12:54:46 +02:00
Max Semenik 7f2f0c007c Migrate skip checks to --EXTENSIONS--, p4
For rationale, see #6787

Extensions migrated in part 4:
* simplexml
* skeleton
* soap
* spl
* sqlite3
* sysvmsg
* sysvsem
* tidy - also removed a check for an ancient dependency version
2021-04-08 10:36:44 +02:00
Nikita Popov c4a25da096 Update ext/soap parameter names
Closes GH-6300.
2020-10-08 16:32:01 +02:00
Nikita Popov 9e32e1322e Accept bool in SoapClient::__doRequest
$one_way is a boolean argument.
2020-10-08 12:36:49 +02:00
Máté Kocsis 9975986b7e Improve error messages mentioning parameters instead of arguments
Closes GH-5999
2020-09-09 10:47:43 +02:00
Máté Kocsis 47d9446c48 Promote warnings to exceptions in ext/soap and ext/xmlwriter
Closes GH-5998
2020-09-01 14:22:19 +02:00
Máté Kocsis 7aacc705d0 Add many missing closing PHP tags to tests
Closes GH-5958
2020-08-09 22:03:36 +02:00
Nikita Popov ac56ca0dcc Separate __call and __soapCall implementations
This is overly pedantic, but allows us to enable more arginfo
consistency checks.
2020-07-21 12:59:28 +02:00
Máté Kocsis d30cd7d7e7 Review the usage of apostrophes in error messages
Closes GH-5590
2020-07-10 21:05:28 +02:00
Fabien Villepinte 0c6d06ecfa Replace EXPECTF when possible
Closes GH-5779
2020-06-29 21:31:44 +02:00
Máté Kocsis 4a816584a4 Make float to string casts locale-independent
From now on, float to string casting will always behave locale-independently.
RFC: https://wiki.php.net/rfc/locale_independent_float_to_string
Closes GH-5224

Co-authored-by: George Peter Banyard <girgias@php.net>
2020-05-08 10:52:23 +02:00
Nikita Popov f8d795820e Reindent phpt files 2020-02-03 22:52:20 +01:00
Christoph M. Becker c8eceba2c7 Merge branch 'PHP-7.4'
* PHP-7.4:
  Make test independent of online XSD schema
  Yet another check for php_strip_tags_ex()
2020-01-24 14:20:59 +01:00
Christoph M. Becker 1ea5d2e5ad Merge branch 'PHP-7.3' into PHP-7.4
* PHP-7.3:
  Make test independent of online XSD schema
  Yet another check for php_strip_tags_ex()
2020-01-24 14:19:17 +01:00
Christoph M. Becker 49cbd23155 Make test independent of online XSD schema
The test still needs to access <http://www.w3.org/2009/01/xml.xsd>, but
at least we no longer depend on <http://x-road.eu/xsd/x-road.xsd>,
which may be moved again.
2020-01-24 14:18:16 +01:00
Nikita Popov 4da7e67d12 Merge branch 'PHP-7.4'
* PHP-7.4:
  Fix bug76348.phpt
2020-01-23 15:09:59 +01:00
Nikita Popov 47b1a58e96 Merge branch 'PHP-7.3' into PHP-7.4
* PHP-7.3:
  Fix bug76348.phpt
2020-01-23 15:09:54 +01:00
Nikita Popov 2c2cbbbf55 Fix bug76348.phpt
Adjust for URL change in XSD file and mark as online test.

Is it possible for use to store http://x-road.eu/xsd/xroad.xsd
locally instead? Do relative file system paths work here?
I'm not familiar with this.
2020-01-23 15:08:20 +01:00
Christoph M. Becker dabc28d182 Fix #78880: Spelling error report
We fix the most often occuring typos according to a recent codespell
report[1] in tests, code comments and documentation.

[1] <https://fossies.org/linux/test/php-src-master-f8f48ce.191129.tar.gz/codespell.html>.
2019-12-21 11:58:00 +01:00
Fabien Villepinte a555cc0b3d Clean DONE tags from tests
Remove most of the `===DONE===` tags and its variations.
Keep `===DONE===` if the test output otherwise becomes empty.

Closes GH-4872.
2019-11-07 21:31:47 +01:00
Nikita Popov d37d418927 Merge branch 'PHP-7.4' 2019-07-23 11:28:10 +02:00
George Peter Banyard 6d6d954d0d Cleanup of remaining E_STRICT in tests 2019-07-23 11:27:23 +02:00
Nikita Popov 224353a18f Merge branch 'PHP-7.4' 2019-05-22 11:45:31 +02:00
Nikita Popov b162c8f55a Mark bug44811.phpt as an online test
For some reason this was checked on PHP-7.2 and PHP-7.3, but not
on PHP-7.4. Bad merge?
2019-05-22 11:43:56 +02:00
Nikita Popov ce8be6f499 Merge branch 'PHP-7.3' into PHP-7.4 2019-05-22 11:43:40 +02:00
Nikita Popov 3a719696bc Merge branch 'PHP-7.2' into PHP-7.3 2019-05-22 11:43:26 +02:00
Nikita Popov 3a0de243c3 Use a different URL in bug44811.phpt 2019-05-22 11:41:51 +02:00
Peter Kokot 5b4514dee8 Merge branch 'PHP-7.4'
* PHP-7.4:
  Convert CRLF to LF in *.wsdl files
2019-05-11 17:17:40 +02:00
Peter Kokot 4e0e0b8152 Merge branch 'PHP-7.3' into PHP-7.4
* PHP-7.3:
  Convert CRLF to LF in *.wsdl files
2019-05-11 17:16:50 +02:00
Peter Kokot bec22af8d7 Merge branch 'PHP-7.2' into PHP-7.3
* PHP-7.2:
  Convert CRLF to LF in *.wsdl files
2019-05-11 17:15:08 +02:00
Peter Kokot b15bfb9129 Convert CRLF to LF in *.wsdl files
These EOL types are part of different environments and not part of the
tests themselves.
2019-05-11 17:12:28 +02:00
Nikita Popov e175c4d865 Merge branch 'PHP-7.4' 2019-04-29 13:54:04 +02:00
Nikita Popov b1c5f7b265 Merge branch 'PHP-7.3' into PHP-7.4 2019-04-29 13:53:57 +02:00
Nikita Popov ff2b5bda59 Merge branch 'PHP-7.2' into PHP-7.3 2019-04-29 13:53:45 +02:00
Nikita Popov 5da0579259 Fixed bug #77945
Make sure that we proper distinguish between empty string key and
no key during SDL serialization.
2019-04-29 13:52:18 +02:00
Nikita Popov 4080b2a748 Merge branch 'PHP-7.4' 2019-03-20 11:40:21 +01:00
Nikita Popov fb109bacea Mark bug76348.phpt as online test 2019-03-20 11:40:09 +01:00