You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Stdlib: openssl_x509_export() JIT/AOT lowering missing — VM path only (ext/openssl/openssl.c) #32557
bug · AOT/JIT leftover of #20273 · openssl X.509 export
Problem
openssl_x509_export() works on the VM (ext/openssl/openssl_x509_export.php + VmOpensslX509Native::exportCertificatePem). JIT/AOT still throw LogicException: openssl_x509_export() is not implemented for JIT in this compiler build (issue #20273).
Thin-standalone AOT has no PHP FFI, so NestedJIT of the VM FFI path cannot call PEM_write_bio_X509. Bake the exported PEM in the compiler process from compile-time certificate literals, same as openssl_x509_verify() (#32535 leftover of #6595).
Repro
Zend 8.2+
VM
AOT (master)
openssl_x509_export($pem, $out) with PEM nowdoc
true, $out contains BEGIN CERTIFICATE
same
compile abort, not implemented for JIT
invalid PEM
warning + false
warning + false
compile abort
aot-smoke.sh is 8/8 on this tree — toolchain is fine; this is the feature.
Activity
PurHur commentedon Aug 19, 2026
claim: implementer I/O-crypto-text — leftover of #20273; bake openssl_x509_export() for JIT/AOT from compile-time PEM (peer #32535). aot-smoke next.
Stdlib: openssl_x509_export JIT/AOT lowering (#32557) (#32561)
AOT: bake openssl_x509_export_to_file() from compile-time PEM+path (#…