diff options
author | Greg Hudson <ghudson@mit.edu> | 2011-03-11 17:47:21 +0000 |
---|---|---|
committer | Greg Hudson <ghudson@mit.edu> | 2011-03-11 17:47:21 +0000 |
commit | 16007fbb9361745cef2a9c322e0b7e1ec2b9d77a (patch) | |
tree | d1e6363eb1b48b3d1c1052fa3841e0665f8574a3 /src/lib/crypto | |
parent | e8720a1caf469a233feabfea7883c0b5146d08d6 (diff) | |
download | krb5-16007fbb9361745cef2a9c322e0b7e1ec2b9d77a.tar.gz krb5-16007fbb9361745cef2a9c322e0b7e1ec2b9d77a.tar.xz krb5-16007fbb9361745cef2a9c322e0b7e1ec2b9d77a.zip |
Fix NSS PBKDF2 in the v4 salt (i.e. empty salt) case
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@24700 dc483132-0cff-0310-8789-dd5450dbe970
Diffstat (limited to 'src/lib/crypto')
-rw-r--r-- | src/lib/crypto/nss/pbkdf2.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/src/lib/crypto/nss/pbkdf2.c b/src/lib/crypto/nss/pbkdf2.c index 9a0d4fd669..10272c8d2a 100644 --- a/src/lib/crypto/nss/pbkdf2.c +++ b/src/lib/crypto/nss/pbkdf2.c @@ -62,8 +62,9 @@ krb5int_pbkdf2_hmac_sha1(const krb5_data *out, unsigned long count, if (slot == NULL) return k5_nss_map_last_error(); + /* NSS treats a null saltItem.data as a request for a random salt. */ saltItem.type = siBuffer; - saltItem.data = (unsigned char *)salt->data; + saltItem.data = (salt->data == NULL) ? "" : (unsigned char *)salt->data; saltItem.len = salt->length; /* PKCS 5 was designed to be DER encoded. Algid's carry all the |