1
0
mirror of https://github.com/php/php-src.git synced 2026-03-24 00:02:20 +01:00

Merge branch 'PHP-8.4'

This commit is contained in:
Gina Peter Banyard
2025-08-23 15:28:01 +02:00
2 changed files with 7 additions and 1 deletions

3
NEWS
View File

@@ -37,6 +37,9 @@ PHP NEWS
. Implement #81724 (openssl_cms_encrypt only allows specific ciphers).
(Jakub Zelenka)
- Phar:
. Fixed memory leaks when verifying OpenSSL signature. (Girgias)
- Session:
. Added support for partitioned cookies. (nielsdos)

View File

@@ -1921,6 +1921,7 @@ zend_result phar_create_signature(phar_archive_data *phar, php_stream *fp, char
if (!EVP_SignInit(md_ctx, mdtype)) {
EVP_PKEY_free(key);
EVP_MD_CTX_free(md_ctx);
efree(sigbuf);
if (error) {
spprintf(error, 0, "unable to initialize openssl signature for phar \"%s\"", phar->fname);
@@ -1931,6 +1932,7 @@ zend_result phar_create_signature(phar_archive_data *phar, php_stream *fp, char
while ((sig_len = php_stream_read(fp, (char*)buf, sizeof(buf))) > 0) {
if (!EVP_SignUpdate(md_ctx, buf, sig_len)) {
EVP_PKEY_free(key);
EVP_MD_CTX_free(md_ctx);
efree(sigbuf);
if (error) {
spprintf(error, 0, "unable to update the openssl signature for phar \"%s\"", phar->fname);
@@ -1941,6 +1943,7 @@ zend_result phar_create_signature(phar_archive_data *phar, php_stream *fp, char
if (!EVP_SignFinal (md_ctx, sigbuf, &siglen, key)) {
EVP_PKEY_free(key);
EVP_MD_CTX_free(md_ctx);
efree(sigbuf);
if (error) {
spprintf(error, 0, "unable to write phar \"%s\" with requested openssl signature", phar->fname);
@@ -1950,7 +1953,7 @@ zend_result phar_create_signature(phar_archive_data *phar, php_stream *fp, char
sigbuf[siglen] = '\0';
EVP_PKEY_free(key);
EVP_MD_CTX_destroy(md_ctx);
EVP_MD_CTX_free(md_ctx);
#else
size_t siglen;
sigbuf = NULL;