Skip to content

Conversation

@pull
Copy link

@pull pull bot commented Sep 5, 2025

See Commits and Changes for more details.


Created by pull[bot] (v2.0.0-alpha.3)

Can you help keep this open source service alive? 💖 Please sponsor : )

DanielEScherzer and others added 7 commits September 5, 2025 12:30
* uri: Fix handling of empty ports for uri_parser_rfc3986

* NEWS

* uri: Skip the port validation during parsing when port component is empty
…ing a deprecated constant

When deprecation causes an exception, we should return NULL instead of
continuing.

Closes GH-19723.
* PHP-8.3:
  Fix GH-19720: Assertion failure when error handler throws when accessing a deprecated constant
* PHP-8.4:
  Fix GH-19720: Assertion failure when error handler throws when accessing a deprecated constant
This regressed in 8.4 when dba started mixing objects and resources
(streams).
The streams are first destroyed at a first step in shutdown, and in slow
shutdown then the symbol table is destroyed which destroys the dba
objects. The dba objects still use the streams but they have been
destroyed already, causing a UAF. Using dtor_obj instead of free_obj
would work around this but would cause issues like memory leaks because
dtor_obj may be skipped while free_obj may not be.
Instead, use the same solution as mysqlnd uses in that we fully manage
the stream lifecycle ourselves. This also avoids users from meddling
with the stream through get_resources().
This would be fixed 'automatically' in the future when we are using
objects for everything.

Closes GH-19710.
* PHP-8.4:
  Fix GH-19706: dba stream resource mismanagement
@pull pull bot locked and limited conversation to collaborators Sep 5, 2025
@pull pull bot added the ⤵️ pull label Sep 5, 2025
@pull pull bot merged commit 366a5a2 into wudi:master Sep 5, 2025
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants