summaryrefslogtreecommitdiffstats
path: root/crypto/evp/p5_crpt.c
diff options
context:
space:
mode:
authorDr. Stephen Henson <steve@openssl.org>2000-05-04 00:08:35 +0000
committerDr. Stephen Henson <steve@openssl.org>2000-05-04 00:08:35 +0000
commita331a305e9c9c5353bd42db6dbda78a418285708 (patch)
treed43a47f9dc244b7e04ea05547286b42053cc587d /crypto/evp/p5_crpt.c
parent316e6a66f2c4f28f8705636921825c467a5ceef3 (diff)
Make PKCS#12 code handle missing passwords.
Add a couple of FAQs.
Diffstat (limited to 'crypto/evp/p5_crpt.c')
-rw-r--r--crypto/evp/p5_crpt.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/crypto/evp/p5_crpt.c b/crypto/evp/p5_crpt.c
index e3dae52d4d..6bfa2c5acb 100644
--- a/crypto/evp/p5_crpt.c
+++ b/crypto/evp/p5_crpt.c
@@ -125,6 +125,9 @@ int PKCS5_PBE_keyivgen(EVP_CIPHER_CTX *cctx, const char *pass, int passlen,
salt = pbe->salt->data;
saltlen = pbe->salt->length;
+ if(!pass) passlen = 0;
+ else if(passlen == -1) passlen = strlen(pass);
+
EVP_DigestInit (&ctx, md);
EVP_DigestUpdate (&ctx, pass, passlen);
EVP_DigestUpdate (&ctx, salt, saltlen);