提交 4718f449 编写于 作者: M Matt Caswell

Improve error handling in pk7_doit

If a mem allocation failed we would ignore it. This commit fixes it to
always check.
Reviewed-by: NRich Salz <rsalz@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/5596)
上级 e45b4dd2
......@@ -316,16 +316,18 @@ BIO *PKCS7_dataInit(PKCS7 *p7, BIO *bio)
}
if (bio == NULL) {
if (PKCS7_is_detached(p7))
if (PKCS7_is_detached(p7)) {
bio = BIO_new(BIO_s_null());
else if (os && os->length > 0)
} else if (os && os->length > 0) {
bio = BIO_new_mem_buf(os->data, os->length);
if (bio == NULL) {
} else {
bio = BIO_new(BIO_s_mem());
if (bio == NULL)
goto err;
BIO_set_mem_eof_return(bio, 0);
}
if (bio == NULL)
goto err;
}
if (out)
BIO_push(out, bio);
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册