1
0
mirror of https://github.com/php/php-src.git synced 2026-04-21 15:08:16 +02:00
Commit Graph

62720 Commits

Author SHA1 Message Date
Christoph M. Becker 76dccd8207 Fix GH-9518: Disabling IPv6 support disables unrelated constants
We need to properly terminate the "conditional compilation" in stub
files.

Closes GH-9520.
2022-09-10 18:12:22 +02:00
Arnaud Le Blanc 3c852cf43f Merge branch 'PHP-8.1' into PHP-8.2
* PHP-8.1:
  Check return value of zend_jit_trace_get_exit_addr() (#9097)
2022-09-09 10:51:10 +02:00
Arnaud Le Blanc 466e4dc2a2 Check return value of zend_jit_trace_get_exit_addr() (#9097) 2022-09-09 10:50:03 +02:00
Derick Rethans 49c029858b Fixed error updating once more 2022-09-09 09:16:24 +01:00
Derick Rethans f799bc4eca Don't return existing error_container/NULL, but use by-ref instead 2022-09-09 00:25:30 +01:00
Derick Rethans 8cdfffb753 Fixed MemorySanitizer: use-of-uninitialized-value warning introduced by 932586c426 2022-09-09 00:25:30 +01:00
Ilija Tovilo 6af3f5d514 Merge branch 'PHP-8.1' into PHP-8.2
* PHP-8.1:
  Skip oci tests that leak under asan
  Fix undefined left shift in oci
2022-09-08 15:58:11 +02:00
Ilija Tovilo f8d62b4c4b Merge branch 'PHP-8.0' into PHP-8.1
* PHP-8.0:
  Skip oci tests that leak under asan
  Fix undefined left shift in oci
2022-09-08 15:57:53 +02:00
Ilija Tovilo 4a8cca241f Skip oci tests that leak under asan 2022-09-08 15:56:13 +02:00
Ilija Tovilo aa7f4497bf Fix undefined left shift in oci
The bit is shifted into the signed bit which is undefined. Make the
integer explicitly unsigned before shifting.
2022-09-08 15:56:10 +02:00
Máté Kocsis 3227d04fa9 Declare ext/standard constants in stubs - part 7 (#9505) 2022-09-08 13:57:07 +02:00
Ilija Tovilo a85c757dcb Merge branch 'PHP-8.1' into PHP-8.2
* PHP-8.1:
  Private method incorrectly marked as "overwrites" in reflection
2022-09-08 10:44:32 +02:00
Ilija Tovilo a795f3ebc6 Merge branch 'PHP-8.0' into PHP-8.1
* PHP-8.0:
  Private method incorrectly marked as "overwrites" in reflection
2022-09-08 10:44:13 +02:00
Ilija Tovilo 1435fc6262 Private method incorrectly marked as "overwrites" in reflection
Fix GH-9409
Closes GH-9469
2022-09-08 10:43:25 +02:00
David CARLIER 4f2759525c Fix GH-9493: fix ancillary data build for FreeBSD prior to the 13 release. (#9496)
the legacy sockcred struct does not hold the process id, thus sockcred2
 had been added from FreeBSD 13 in conjunction with LOCAL_CREDS_PERSISTENT
 to address this thus we disable the feature for earlier releases.
2022-09-08 09:10:16 +01:00
Máté Kocsis ce058273ba Add support for validation of missing method synopses (#9491) 2022-09-07 17:40:36 +02:00
George Peter Banyard 3e362f51ac Add zend_string INI validators
Currently we only have validators for char* which is rather annoying as INI settings are saved as zend_string* in the first place

Closes GH-9328
2022-09-06 10:41:47 +01:00
George Peter Banyard 5011a185b5 Update globals to use bool type 2022-09-06 10:34:10 +01:00
George Peter Banyard 1ad59b32c2 Update INI validator and displayers depending on INI type
Closes GH-9451
2022-09-06 10:33:34 +01:00
Tim Düsterhus ddf7a5d4d9 random: Validate that the arrays do not contain extra elements when unserializing (#9458)
* Apply `var_dump()` in 02_engine/all_serialize_error.phpt

This ensures that an undetected serialization error is clear identifiable in the output.

* random: Validate that the arrays do not contain extra elements when unserializing
2022-09-05 17:33:36 +02:00
Christoph M. Becker 15405c60da Merge branch 'PHP-8.1' into PHP-8.2
* PHP-8.1:
  Fix GH-9411: PgSQL large object resource is incorrectly closed
2022-09-05 17:28:23 +02:00
Christoph M. Becker b5cad508fe Merge branch 'PHP-8.0' into PHP-8.1
* PHP-8.0:
  Fix GH-9411: PgSQL large object resource is incorrectly closed
2022-09-05 17:26:13 +02:00
Yurun 6ac3f7c84d Fix GH-9411: PgSQL large object resource is incorrectly closed
Co-authored-by: Christoph M. Becker <cmbecker69@gmx.de>

Closes GH-9411.
2022-09-05 16:37:54 +02:00
Máté Kocsis c547fc183c Add support for validation of missing class synopses (#9472) 2022-09-05 14:21:15 +02:00
Máté Kocsis 87862578cb Merge branch 'PHP-8.1' into PHP-8.2
* PHP-8.1:
  Fix inexistent skipif.inc
2022-09-05 12:38:09 +02:00
Máté Kocsis 59180b50b3 Fix inexistent skipif.inc 2022-09-05 12:37:53 +02:00
Dmitry Stogov c151e9b75b Merge branch 'PHP-8.1' into PHP-8.2
* PHP-8.1:
  Fix type inference
2022-09-05 13:01:04 +03:00
Dmitry Stogov c852e0fff9 Merge branch 'PHP-8.0' into PHP-8.1
* PHP-8.0:
  Fix type inference
2022-09-05 12:56:34 +03:00
Dmitry Stogov 81cb005ef7 Fix type inference
Fixes oss-fuzz #50792
2022-09-05 12:55:50 +03:00
David Bohman f098193d15 GH-9464: Fix build on older macOs releases.
A simple check for CommonCrypto/CommonRandom.h does not work on earlier macOS.
Must also pull in sys/types.h for size_t, Availability.h for __OSX_AVAILABLE_STARTING,
and CommonCrypto/CommonCryptoError.h for CCCryptorStatus.

Closes GH-9479.
2022-09-04 02:12:28 +01:00
Arnaud Le Blanc ea1287b015 Log the cause of error when opcache cannot write to file cache (#9258) 2022-09-03 11:23:43 +02:00
Arnaud Le Blanc fb242f41ba Fix high opcache.interned_strings_buffer causing shm corruption (#9260) 2022-09-03 11:23:10 +02:00
Máté Kocsis e733ebf30e Add parenthesis around preprocessor conditions in stubs
gen_stub.php concatenates nested #ifs into one #if so let's make sure the semantics remain the same.
2022-09-02 16:21:28 +02:00
Máté Kocsis cfa72ff3af Declare ext/standard constants in stubs - part 6
Closes GH-9467
2022-09-02 16:07:25 +02:00
Máté Kocsis 5c3559464b Fix memory leak triggered by unsuccessful dynamic property unserialization
Closes GH-9468
2022-09-02 15:07:19 +02:00
Máté Kocsis 6f2f228e4a Declare ext/standard constants in stubs - part 5
Closes GH-9466
2022-09-02 15:04:49 +02:00
Arnaud Le Blanc dcde9b85a6 Merge branch 'PHP-8.1' into PHP-8.2
* PHP-8.1:
  [ci skip] NEWS
  [ci skip] NEWS
  Add tests
  Fix GH-8932: Provide a way to get the called-scope of closures (#9299)
2022-09-02 13:55:57 +02:00
Arnaud Le Blanc 409baac29c Merge branch 'PHP-8.0' into PHP-8.1
* PHP-8.0:
  [ci skip] NEWS
  Add tests
  Fix GH-8932: Provide a way to get the called-scope of closures (#9299)
2022-09-02 13:53:14 +02:00
Arnaud Le Blanc db1ef97209 Add tests 2022-09-02 13:33:21 +02:00
Nicolas Grekas 93f11d8429 Fix GH-8932: Provide a way to get the called-scope of closures (#9299)
Co-authored-by: Christoph M. Becker <cmbecker69@gmx.de>
2022-09-02 13:32:50 +02:00
Máté Kocsis 64b962b241 Declare ext/standard constants in stubs - part 4
Closes GH-9465
2022-09-02 12:41:51 +02:00
Ilija Tovilo d36874d002 Merge branch 'PHP-8.1' into PHP-8.2
* PHP-8.1:
  Fix class name FQN when AST dumping new and class const
2022-09-02 08:58:27 +02:00
Ilija Tovilo 2cfb028e22 Fix class name FQN when AST dumping new and class const
Fixes GH-9447
Closes GH-9462
2022-09-02 08:57:26 +02:00
Tim Düsterhus f7d426cca6 Unify structure for ext/random's randomizer tests (#9410)
* Unify structure for ext/random's engine tests (2)

This makes adjustments that were missed in
2d6a883b3a.

* Add `engines.inc` for ext/random tests

* Unify structure for ext/random's randomizer tests
2022-08-31 19:22:39 +02:00
Bob Weinand 94ee4f9834 Port all internally used classes to use default_object_handlers
Signed-off-by: Bob Weinand <bobwei9@hotmail.com>
2022-08-31 16:45:27 +02:00
Bob Weinand 800c6672e5 Fix compilation on MacOS
memrchr has an always available equivalent under the name of zend_memrchr.

Signed-off-by: Bob Weinand <bobwei9@hotmail.com>
2022-08-31 16:45:27 +02:00
Bob Weinand 9e6eab3c13 Store default object handlers alongside the class entry
Object handlers being separate from class entries is a legacy inherited from PHP 5. Today it has little benefit to keep them separate: in fact, accessing object handlers usually requires not-so-safe hacks.
While it is possible to swap handlers in a custom installed create_object handler, this mostly is tedious, as well as it requires allocating the object handlers struct at runtime, possibly caching it etc..

This allows extensions, which intend to observe other classes to install their own class handlers.
The life cycle of internal classes may now be simply observed by swapping the class handlers in post_startup stage.
The life cycle of userland classes may be observed by iterating over the new classes in zend_compile_file and zend_compile_string and then swapping their handlers.

In general, this would also be a first step in directly tying the object handlers to classes. Especially given that I am not aware of any case where the object handlers would be different between various instances of a given class.

Signed-off-by: Bob Weinand <bobwei9@hotmail.com>
2022-08-31 16:45:27 +02:00
Niklas Keller f8b217a345 Fix pcre.jit on Apple Silicon
This backports https://github.com/zherczeg/sljit/pull/105. Relates to bug #80435, however, it doesn't solve the bus error on PHP 8.0, but PHP 8.1 builds fine now.

Closes GH-9279.
2022-08-31 14:22:44 +02:00
Tim Düsterhus c77bbf6fe5 Mark crypt()'s $string parameter as #[\SensitiveParameter] 2022-08-30 20:02:28 +02:00
Christoph M. Becker 65619e868c Fix tests
These changes have been overlooked, when 7908aae30c
had been reverted.
2022-08-30 16:52:33 +02:00