aboutsummaryrefslogtreecommitdiff
path: root/src/lib
diff options
context:
space:
mode:
authorGreg Hudson <ghudson@mit.edu>2011-03-11 17:47:21 +0000
committerGreg Hudson <ghudson@mit.edu>2011-03-11 17:47:21 +0000
commit16007fbb9361745cef2a9c322e0b7e1ec2b9d77a (patch)
treed1e6363eb1b48b3d1c1052fa3841e0665f8574a3 /src/lib
parente8720a1caf469a233feabfea7883c0b5146d08d6 (diff)
downloadkrb5-16007fbb9361745cef2a9c322e0b7e1ec2b9d77a.zip
krb5-16007fbb9361745cef2a9c322e0b7e1ec2b9d77a.tar.gz
krb5-16007fbb9361745cef2a9c322e0b7e1ec2b9d77a.tar.bz2
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')
-rw-r--r--src/lib/crypto/nss/pbkdf2.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/lib/crypto/nss/pbkdf2.c b/src/lib/crypto/nss/pbkdf2.c
index 9a0d4fd..10272c8 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