diff options
Diffstat (limited to 'src/lib/libcrypto/evp/p5_crpt.c')
-rw-r--r-- | src/lib/libcrypto/evp/p5_crpt.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/src/lib/libcrypto/evp/p5_crpt.c b/src/lib/libcrypto/evp/p5_crpt.c index e3dae52d4d..6bfa2c5acb 100644 --- a/src/lib/libcrypto/evp/p5_crpt.c +++ b/src/lib/libcrypto/evp/p5_crpt.c | |||
@@ -125,6 +125,9 @@ int PKCS5_PBE_keyivgen(EVP_CIPHER_CTX *cctx, const char *pass, int passlen, | |||
125 | salt = pbe->salt->data; | 125 | salt = pbe->salt->data; |
126 | saltlen = pbe->salt->length; | 126 | saltlen = pbe->salt->length; |
127 | 127 | ||
128 | if(!pass) passlen = 0; | ||
129 | else if(passlen == -1) passlen = strlen(pass); | ||
130 | |||
128 | EVP_DigestInit (&ctx, md); | 131 | EVP_DigestInit (&ctx, md); |
129 | EVP_DigestUpdate (&ctx, pass, passlen); | 132 | EVP_DigestUpdate (&ctx, pass, passlen); |
130 | EVP_DigestUpdate (&ctx, salt, saltlen); | 133 | EVP_DigestUpdate (&ctx, salt, saltlen); |