Check return code of EVP_CipherInit() in PKCS#12 code.
This commit is contained in:
parent
3fee255102
commit
9d2996b82f
@ -88,7 +88,7 @@ int PKCS12_PBE_keyivgen (EVP_CIPHER_CTX *ctx, const char *pass, int passlen,
|
|||||||
ASN1_TYPE *param, const EVP_CIPHER *cipher, const EVP_MD *md, int en_de)
|
ASN1_TYPE *param, const EVP_CIPHER *cipher, const EVP_MD *md, int en_de)
|
||||||
{
|
{
|
||||||
PBEPARAM *pbe;
|
PBEPARAM *pbe;
|
||||||
int saltlen, iter;
|
int saltlen, iter, ret;
|
||||||
unsigned char *salt;
|
unsigned char *salt;
|
||||||
const unsigned char *pbuf;
|
const unsigned char *pbuf;
|
||||||
unsigned char key[EVP_MAX_KEY_LENGTH], iv[EVP_MAX_IV_LENGTH];
|
unsigned char key[EVP_MAX_KEY_LENGTH], iv[EVP_MAX_IV_LENGTH];
|
||||||
@ -118,8 +118,8 @@ int PKCS12_PBE_keyivgen (EVP_CIPHER_CTX *ctx, const char *pass, int passlen,
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
PBEPARAM_free(pbe);
|
PBEPARAM_free(pbe);
|
||||||
EVP_CipherInit_ex(ctx, cipher, NULL, key, iv, en_de);
|
ret = EVP_CipherInit_ex(ctx, cipher, NULL, key, iv, en_de);
|
||||||
OPENSSL_cleanse(key, EVP_MAX_KEY_LENGTH);
|
OPENSSL_cleanse(key, EVP_MAX_KEY_LENGTH);
|
||||||
OPENSSL_cleanse(iv, EVP_MAX_IV_LENGTH);
|
OPENSSL_cleanse(iv, EVP_MAX_IV_LENGTH);
|
||||||
return 1;
|
return ret;
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user