dev_crypto_cipher: return immediately if allocating cin/cout failed
Signed-off-by: Kurt Roeckx <kurt@openssl.org> Reviewed-by: Rich Salz <rsalz@openssl.org>
This commit is contained in:
parent
c84029dbdc
commit
d8513b4abd
@ -193,6 +193,8 @@ static int dev_crypto_cipher(EVP_CIPHER_CTX *ctx,unsigned char *out,
|
|||||||
if(((unsigned long)in&3) || cinl != inl)
|
if(((unsigned long)in&3) || cinl != inl)
|
||||||
{
|
{
|
||||||
cin=OPENSSL_malloc(cinl);
|
cin=OPENSSL_malloc(cinl);
|
||||||
|
if (cin == NULL)
|
||||||
|
return 0;
|
||||||
memcpy(cin,in,inl);
|
memcpy(cin,in,inl);
|
||||||
cryp.src=cin;
|
cryp.src=cin;
|
||||||
}
|
}
|
||||||
@ -200,6 +202,12 @@ static int dev_crypto_cipher(EVP_CIPHER_CTX *ctx,unsigned char *out,
|
|||||||
if(((unsigned long)out&3) || cinl != inl)
|
if(((unsigned long)out&3) || cinl != inl)
|
||||||
{
|
{
|
||||||
cout=OPENSSL_malloc(cinl);
|
cout=OPENSSL_malloc(cinl);
|
||||||
|
if (cout == NULL)
|
||||||
|
{
|
||||||
|
if (cin != NULL)
|
||||||
|
OPENSSL_free(cin);
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
cryp.dst=cout;
|
cryp.dst=cout;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user