提交 771e0c6c 编写于 作者: J Jonas Maebe 提交者: Kurt Roeckx

dev_crypto_md5_update: check result of realloc(md_data->data) and don't leak memory if it fails

Signed-off-by: NKurt Roeckx <kurt@openssl.org>
Reviewed-by: NRich Salz <rsalz@openssl.org>
上级 d8513b4a
......@@ -382,11 +382,15 @@ static int dev_crypto_md5_update(EVP_MD_CTX *ctx,const void *data,
unsigned long len)
{
MD_DATA *md_data=ctx->md_data;
char *tmp_md_data;
if(ctx->flags&EVP_MD_CTX_FLAG_ONESHOT)
return do_digest(md_data->sess.ses,md_data->md,data,len);
md_data->data=OPENSSL_realloc(md_data->data,md_data->len+len);
tmp_md_data=OPENSSL_realloc(md_data->data,md_data->len+len);
if (tmp_md_data == NULL)
return 0;
md_data->data=tmp_md_data;
memcpy(md_data->data+md_data->len,data,len);
md_data->len+=len;
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册