diff options
Diffstat (limited to 'src/lib/libcrypto/pkcs12/p12_decr.c')
| -rw-r--r-- | src/lib/libcrypto/pkcs12/p12_decr.c | 14 |
1 files changed, 7 insertions, 7 deletions
diff --git a/src/lib/libcrypto/pkcs12/p12_decr.c b/src/lib/libcrypto/pkcs12/p12_decr.c index 9d3557e8d7..9a73c21866 100644 --- a/src/lib/libcrypto/pkcs12/p12_decr.c +++ b/src/lib/libcrypto/pkcs12/p12_decr.c | |||
| @@ -65,7 +65,7 @@ | |||
| 65 | 65 | ||
| 66 | 66 | ||
| 67 | /* Encrypt/Decrypt a buffer based on password and algor, result in a | 67 | /* Encrypt/Decrypt a buffer based on password and algor, result in a |
| 68 | * OPENSSL_malloc'ed buffer | 68 | * malloc'ed buffer |
| 69 | */ | 69 | */ |
| 70 | 70 | ||
| 71 | unsigned char * PKCS12_pbe_crypt(X509_ALGOR *algor, const char *pass, | 71 | unsigned char * PKCS12_pbe_crypt(X509_ALGOR *algor, const char *pass, |
| @@ -84,14 +84,14 @@ unsigned char * PKCS12_pbe_crypt(X509_ALGOR *algor, const char *pass, | |||
| 84 | return NULL; | 84 | return NULL; |
| 85 | } | 85 | } |
| 86 | 86 | ||
| 87 | if(!(out = OPENSSL_malloc(inlen + EVP_CIPHER_CTX_block_size(&ctx)))) { | 87 | if(!(out = malloc(inlen + EVP_CIPHER_CTX_block_size(&ctx)))) { |
| 88 | PKCS12err(PKCS12_F_PKCS12_PBE_CRYPT,ERR_R_MALLOC_FAILURE); | 88 | PKCS12err(PKCS12_F_PKCS12_PBE_CRYPT,ERR_R_MALLOC_FAILURE); |
| 89 | goto err; | 89 | goto err; |
| 90 | } | 90 | } |
| 91 | 91 | ||
| 92 | if (!EVP_CipherUpdate(&ctx, out, &i, in, inlen)) | 92 | if (!EVP_CipherUpdate(&ctx, out, &i, in, inlen)) |
| 93 | { | 93 | { |
| 94 | OPENSSL_free(out); | 94 | free(out); |
| 95 | out = NULL; | 95 | out = NULL; |
| 96 | PKCS12err(PKCS12_F_PKCS12_PBE_CRYPT,ERR_R_EVP_LIB); | 96 | PKCS12err(PKCS12_F_PKCS12_PBE_CRYPT,ERR_R_EVP_LIB); |
| 97 | goto err; | 97 | goto err; |
| @@ -99,7 +99,7 @@ unsigned char * PKCS12_pbe_crypt(X509_ALGOR *algor, const char *pass, | |||
| 99 | 99 | ||
| 100 | outlen = i; | 100 | outlen = i; |
| 101 | if(!EVP_CipherFinal_ex(&ctx, out + i, &i)) { | 101 | if(!EVP_CipherFinal_ex(&ctx, out + i, &i)) { |
| 102 | OPENSSL_free(out); | 102 | free(out); |
| 103 | out = NULL; | 103 | out = NULL; |
| 104 | PKCS12err(PKCS12_F_PKCS12_PBE_CRYPT,PKCS12_R_PKCS12_CIPHERFINAL_ERROR); | 104 | PKCS12err(PKCS12_F_PKCS12_PBE_CRYPT,PKCS12_R_PKCS12_CIPHERFINAL_ERROR); |
| 105 | goto err; | 105 | goto err; |
| @@ -146,7 +146,7 @@ void * PKCS12_item_decrypt_d2i(X509_ALGOR *algor, const ASN1_ITEM *it, | |||
| 146 | ret = ASN1_item_d2i(NULL, &p, outlen, it); | 146 | ret = ASN1_item_d2i(NULL, &p, outlen, it); |
| 147 | if (zbuf) OPENSSL_cleanse(out, outlen); | 147 | if (zbuf) OPENSSL_cleanse(out, outlen); |
| 148 | if(!ret) PKCS12err(PKCS12_F_PKCS12_ITEM_DECRYPT_D2I,PKCS12_R_DECODE_ERROR); | 148 | if(!ret) PKCS12err(PKCS12_F_PKCS12_ITEM_DECRYPT_D2I,PKCS12_R_DECODE_ERROR); |
| 149 | OPENSSL_free(out); | 149 | free(out); |
| 150 | return ret; | 150 | return ret; |
| 151 | } | 151 | } |
| 152 | 152 | ||
| @@ -173,11 +173,11 @@ ASN1_OCTET_STRING *PKCS12_item_i2d_encrypt(X509_ALGOR *algor, const ASN1_ITEM *i | |||
| 173 | if (!PKCS12_pbe_crypt(algor, pass, passlen, in, inlen, &oct->data, | 173 | if (!PKCS12_pbe_crypt(algor, pass, passlen, in, inlen, &oct->data, |
| 174 | &oct->length, 1)) { | 174 | &oct->length, 1)) { |
| 175 | PKCS12err(PKCS12_F_PKCS12_ITEM_I2D_ENCRYPT,PKCS12_R_ENCRYPT_ERROR); | 175 | PKCS12err(PKCS12_F_PKCS12_ITEM_I2D_ENCRYPT,PKCS12_R_ENCRYPT_ERROR); |
| 176 | OPENSSL_free(in); | 176 | free(in); |
| 177 | return NULL; | 177 | return NULL; |
| 178 | } | 178 | } |
| 179 | if (zbuf) OPENSSL_cleanse(in, inlen); | 179 | if (zbuf) OPENSSL_cleanse(in, inlen); |
| 180 | OPENSSL_free(in); | 180 | free(in); |
| 181 | return oct; | 181 | return oct; |
| 182 | } | 182 | } |
| 183 | 183 | ||
