提交 ca982e48 编写于 作者: G Geoff Thorpe

Fix realloc usage in ec_curve.c

Submitted by: Nils Larsch
Reviewed by: Geoff Thorpe
上级 d5f686d8
......@@ -1226,16 +1226,17 @@ int i2d_ECPrivateKey(EC_KEY *a, unsigned char **out)
a->conv_form, NULL, 0, NULL);
if (tmp_len > buf_len)
buffer = OPENSSL_realloc(buffer, tmp_len);
if (buffer == NULL)
{
ECerr(EC_F_I2D_ECPRIVATEKEY,
ERR_R_MALLOC_FAILURE);
goto err;
unsigned char *tmp_buffer = OPENSSL_realloc(buffer, tmp_len);
if (!tmp_buffer)
{
ECerr(EC_F_I2D_ECPRIVATEKEY, ERR_R_MALLOC_FAILURE);
goto err;
}
buffer = tmp_buffer;
buf_len = tmp_len;
}
buf_len = tmp_len;
if (!EC_POINT_point2oct(a->group, a->pub_key,
a->conv_form, buffer, buf_len, NULL))
{
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册