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

Fix potential leaks when writing to BIO fails

When the BIO is created but writing fails, these can leak.

Closes GH-18186.
This commit is contained in:
Niels Dossche
2025-03-29 23:42:45 +01:00
parent 90f582b188
commit 29f96fb1f1
2 changed files with 5 additions and 4 deletions

1
NEWS
View File

@@ -18,6 +18,7 @@ PHP NEWS
- OpenSSL:
. Fix memory leak in openssl_sign() when passing invalid algorithm.
(nielsdos)
. Fix potential leaks when writing to BIO fails. (nielsdos)
- Standard:
. Fixed bug GH-18145 (php8ts crashes in php_clear_stat_cache()).

View File

@@ -5742,8 +5742,8 @@ PHP_FUNCTION(openssl_pkcs7_read)
BIO_get_mem_ptr(bio_out, &bio_buf);
ZVAL_STRINGL(&zcert, bio_buf->data, bio_buf->length);
add_index_zval(zout, i, &zcert);
BIO_free(bio_out);
}
BIO_free(bio_out);
}
}
@@ -5757,8 +5757,8 @@ PHP_FUNCTION(openssl_pkcs7_read)
BIO_get_mem_ptr(bio_out, &bio_buf);
ZVAL_STRINGL(&zcert, bio_buf->data, bio_buf->length);
add_index_zval(zout, i, &zcert);
BIO_free(bio_out);
}
BIO_free(bio_out);
}
}
@@ -6383,8 +6383,8 @@ PHP_FUNCTION(openssl_cms_read)
BIO_get_mem_ptr(bio_out, &bio_buf);
ZVAL_STRINGL(&zcert, bio_buf->data, bio_buf->length);
add_index_zval(zout, i, &zcert);
BIO_free(bio_out);
}
BIO_free(bio_out);
}
}
@@ -6398,8 +6398,8 @@ PHP_FUNCTION(openssl_cms_read)
BIO_get_mem_ptr(bio_out, &bio_buf);
ZVAL_STRINGL(&zcert, bio_buf->data, bio_buf->length);
add_index_zval(zout, i, &zcert);
BIO_free(bio_out);
}
BIO_free(bio_out);
}
}