diff options
author | Greg Hudson <ghudson@mit.edu> | 2011-10-04 15:11:45 +0000 |
---|---|---|
committer | Greg Hudson <ghudson@mit.edu> | 2011-10-04 15:11:45 +0000 |
commit | a046e6135690f97adfa6bb4065d7367cf6142c40 (patch) | |
tree | 83145674cdcbef04017b372221302c4a73b9d7cd /src/lib/crypto | |
parent | 70ba4b1d3410b80901d8be1e5e7e0a652ba326f4 (diff) | |
download | krb5-a046e6135690f97adfa6bb4065d7367cf6142c40.tar.gz krb5-a046e6135690f97adfa6bb4065d7367cf6142c40.tar.xz krb5-a046e6135690f97adfa6bb4065d7367cf6142c40.zip |
Improve k5_get_os_entropy for Windows
When acquiring a crypto context for CryptGenRandom, pass
CRYPT_VERIFYCONTEXT to indicate that we don't need access to private
keys. Appears to make OS entropy work on Windows XP.
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@25297 dc483132-0cff-0310-8789-dd5450dbe970
Diffstat (limited to 'src/lib/crypto')
-rw-r--r-- | src/lib/crypto/krb/prng.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/src/lib/crypto/krb/prng.c b/src/lib/crypto/krb/prng.c index bed2a46b92..e478b198d0 100644 --- a/src/lib/crypto/krb/prng.c +++ b/src/lib/crypto/krb/prng.c @@ -41,7 +41,8 @@ k5_get_os_entropy(unsigned char *buf, size_t len) krb5_boolean result; HCRYPTPROV provider; - if (!CryptAcquireContext(&provider, NULL, NULL, PROV_RSA_FULL, 0)) + if (!CryptAcquireContext(&provider, NULL, NULL, PROV_RSA_FULL, + CRYPT_VERIFYCONTEXT)) return FALSE; result = CryptGenRandom(provider, len, buf); (void)CryptReleaseContext(provider, 0); |