提交 098c1e3d 编写于 作者: M Matt Caswell

Fix a leak in i2b_PVK

Commit 8e588e28 fixed a leak but introduced a new one.
Reviewed-by: NTim Hudson <tjh@openssl.org>
Reviewed-by: NRich Salz <rsalz@openssl.org>
上级 1f644005
......@@ -806,7 +806,7 @@ static int i2b_PVK(unsigned char **out, EVP_PKEY *pk, int enclevel,
pem_password_cb *cb, void *u)
{
int outlen = 24, pklen;
unsigned char *p, *salt = NULL;
unsigned char *p = NULL, *salt = NULL;
EVP_CIPHER_CTX *cctx = NULL;
if (enclevel)
outlen += PVK_SALTLEN;
......@@ -828,7 +828,7 @@ static int i2b_PVK(unsigned char **out, EVP_PKEY *pk, int enclevel,
cctx = EVP_CIPHER_CTX_new();
if (cctx == NULL)
return -1;
goto error;
write_ledword(&p, MS_PVKMAGIC);
write_ledword(&p, 0);
......@@ -882,6 +882,8 @@ static int i2b_PVK(unsigned char **out, EVP_PKEY *pk, int enclevel,
error:
EVP_CIPHER_CTX_free(cctx);
if (*out == NULL)
OPENSSL_free(p);
return -1;
}
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册