summaryrefslogtreecommitdiffstats
path: root/src/lib/crypto
diff options
context:
space:
mode:
authorGreg Hudson <ghudson@mit.edu>2011-10-04 15:11:45 +0000
committerGreg Hudson <ghudson@mit.edu>2011-10-04 15:11:45 +0000
commita046e6135690f97adfa6bb4065d7367cf6142c40 (patch)
tree83145674cdcbef04017b372221302c4a73b9d7cd /src/lib/crypto
parent70ba4b1d3410b80901d8be1e5e7e0a652ba326f4 (diff)
downloadkrb5-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.c3
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);