Repository navigation
research: verify PHP Base64 fallible-allocation patch before/after - #5
Conversation
Verified PHP Core patch evidence — 2026-10-23Final comprehensive run: https://github.com/forgeblueai/php-core-lab/actions/runs/39996126737 All three jobs passed on exact, verified upstream source SHAs.
Additional patched 8.5.12 Clang ASan+UBSan build: 11/11 targeted PHPT pass (six official Base64 tests, one new correctness test, and four existing smoke tests). No sanitizer diagnostic in those test logs. OOM probe was not run under Source patch: Remaining upstream acceptance work: validate on the lowest applicable maintained bugfix branch, run broader standard/extension tests and ZTS build, review performance/cross-architecture SIMD dispatch, recheck for overlapping upstream PRs, and submit through a fork to |
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
Purpose
Experimental PHP Core patch candidate for php/php-src#24492, building on ForgeBlue’s verified Base64 reproduction and caller audit in #4.
Patch design
PHP_BASE64_FALLIBLEas a newphp_base64_encode_ex()flag used only byPHP_FUNCTION(base64_encode).zend_string_safe_falloc(..., fallible); return NULL before touching a failed buffer.RETURN_OOM()when allocation fails.PHP_BASE64_NO_PADDING.Validation gates (CI must verify, not assumed)
base64_encode()probe hits hard-limit exit 137 and misses shutdown.The source patch and experimental code are published in ForgeBlue’s lab, not submitted to upstream yet. We will inspect logs and upstream PR overlap before an upstream PR. No new CVE or independent vulnerability claim.