openssl/crypto
Mat fa64e63373 Use BCryptGenRandom on Windows 7 or higher
When openssl is compiled with MSVC and _WIN32_WINNT>=0x0601 (Windows 7), BCryptGenRandom is used instead of the legacy CryptoAPI.

This change brings the following benefits:
- Removes dependency on CryptoAPI (legacy API) respectively advapi32.dll
- CryptoAPI Cryptographic Service Providers (rsa full) are not dynamically loaded.
- Allows Universal Windows Platform (UWP) apps to use openssl (CryptGenRandom is not available for Windows store apps)
Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Rich Salz <rsalz@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/1142)
2016-06-03 12:18:59 -04:00
..
aes Add final(?) set of copyrights. 2016-06-01 11:27:25 -04:00
asn1 Don't leak memory on ASN1_item_pack() error path 2016-06-01 18:00:53 +01:00
async OpenBSD doesn't have ucontext.h so don't try and include it 2016-06-01 10:19:25 +01:00
bf Remove/rename some old files. 2016-06-01 11:29:57 -04:00
bio Make sure max in fmtstr() doesn't overflow into negativity 2016-05-30 05:41:57 +02:00
blake2 Copyright consolidation 09/10 2016-05-17 14:53:16 -04:00
bn Fix test failures when using enable-ubsan 2016-06-02 15:36:22 +01:00
buffer Remove unused error/function codes. 2016-05-23 15:04:23 -04:00
camellia x86_64 assembly pack: tolerate spaces in source directory name. 2016-05-29 14:12:51 +02:00
cast Remove/rename some old files. 2016-06-01 11:29:57 -04:00
chacha chacha/chacha_enc.c: harmonize counter width with subroutine name. 2016-06-03 10:23:58 +02:00
cmac Copyright consolidation 06/10 2016-05-17 14:51:04 -04:00
cms Remove unused error/function codes. 2016-05-23 15:04:23 -04:00
comp Remove unused error/function codes. 2016-05-23 15:04:23 -04:00
conf Handle Visual C warning about non-standard function names. 2016-05-26 00:48:23 +02:00
ct Remove unused error/function codes. 2016-05-23 15:04:23 -04:00
des Remove/rename some old files. 2016-06-01 11:29:57 -04:00
dh Remove/rename some old files. 2016-06-01 11:29:57 -04:00
dsa Remove/rename some old files. 2016-06-01 11:29:57 -04:00
dso Remove/rename some old files. 2016-06-01 11:29:57 -04:00
ec Free tempory data on error in ec_wNAF_mul() 2016-06-01 18:00:53 +01:00
engine #4342: few missing malloc return checks and free in error paths 2016-05-23 23:08:22 +01:00
err Use strerror_r()/strerror_s() instead of strerror() where possible 2016-05-23 23:26:10 +01:00
evp Parameter copy sanity checks. 2016-05-31 13:06:16 +01:00
hmac #4342: few missing malloc return checks and free in error paths 2016-05-23 23:08:22 +01:00
idea Remove/rename some old files. 2016-06-01 11:29:57 -04:00
include/internal Use strerror_r()/strerror_s() instead of strerror() where possible 2016-05-23 23:26:10 +01:00
kdf Remove unused error/function codes. 2016-05-23 15:04:23 -04:00
lhash Complete the rename of LHASH functions and types 2016-05-23 00:46:53 +02:00
md2 Copyright consolidation 05/10 2016-05-17 15:38:09 -04:00
md4 Remove/rename some old files. 2016-06-01 11:29:57 -04:00
md5 Remove/rename some old files. 2016-06-01 11:29:57 -04:00
mdc2 Copyright consolidation 07/10 2016-05-17 14:51:26 -04:00
modes x86_64 assembly pack: tolerate spaces in source directory name. 2016-05-29 14:12:51 +02:00
objects Remove/rename some old files. 2016-06-01 11:29:57 -04:00
ocsp Tidy up OCSP print handling. 2016-06-02 15:30:27 +01:00
pem Remove/rename some old files. 2016-06-01 11:29:57 -04:00
perlasm Remove/rename some old files. 2016-06-01 11:29:57 -04:00
pkcs7 Remove unused error/function codes. 2016-05-23 15:04:23 -04:00
pkcs12 Remove unused error/function codes. 2016-05-23 15:04:23 -04:00
poly1305 x86_64 assembly pack: tolerate spaces in source directory name. 2016-05-29 14:12:51 +02:00
rand Use BCryptGenRandom on Windows 7 or higher 2016-06-03 12:18:59 -04:00
rc2 Remove/rename some old files. 2016-06-01 11:29:57 -04:00
rc4 x86_64 assembly pack: tolerate spaces in source directory name. 2016-05-29 14:12:51 +02:00
rc5 Remove/rename some old files. 2016-06-01 11:29:57 -04:00
ripemd Copyright consolidation 08/10 2016-05-17 14:51:34 -04:00
rsa Remove unused error/function codes. 2016-05-23 15:04:23 -04:00
seed Copyright consolidation 09/10 2016-05-17 14:53:16 -04:00
sha Remove/rename some old files. 2016-06-01 11:29:57 -04:00
srp Fix error return value in SRP functions 2016-05-23 23:55:11 +01:00
stack Constify stack and lhash macros. 2016-05-21 22:49:00 +01:00
ts Remove unused error/function codes. 2016-05-23 15:04:23 -04:00
txt_db Rename lh_xxx,sk_xxx tp OPENSSL_{LH,SK}_xxx 2016-05-20 10:48:29 -04:00
ui Remove unused error/function codes. 2016-05-23 15:04:23 -04:00
whrlpool x86_64 assembly pack: tolerate spaces in source directory name. 2016-05-29 14:12:51 +02:00
x509 Don't leak memory on X509_TRUST_add() error path 2016-06-01 18:00:53 +01:00
x509v3 Fix threading issue that at best will leak memory 2016-06-03 12:08:13 -04:00
alphacpuid.pl Add assembly CRYPTO_memcmp. 2016-05-19 22:33:00 +02:00
arm64cpuid.pl Add assembly CRYPTO_memcmp. 2016-05-19 22:33:00 +02:00
arm_arch.h Copyright consolidation 07/10 2016-05-17 14:51:26 -04:00
armcap.c Copyright consolidation 07/10 2016-05-17 14:51:26 -04:00
armv4cpuid.pl Add assembly CRYPTO_memcmp. 2016-05-19 22:33:00 +02:00
build.info Break out DllMain from crypto/cryptlib.c and use it in shared libs only 2016-03-30 11:22:42 +02:00
c64xpluscpuid.pl Add assembly CRYPTO_memcmp. 2016-05-19 22:33:00 +02:00
cpt_err.c Remove unused error/function codes. 2016-05-23 15:04:23 -04:00
cryptlib.c Add assembly CRYPTO_memcmp. 2016-05-19 22:33:00 +02:00
cversion.c Copyright consolidation 08/10 2016-05-17 14:51:34 -04:00
dllmain.c Copyright consolidation 09/10 2016-05-17 14:53:16 -04:00
ebcdic.c Copyright consolidation 05/10 2016-05-17 15:38:09 -04:00
ex_data.c Copyright consolidation 05/10 2016-05-17 15:38:09 -04:00
ia64cpuid.S Add final(?) set of copyrights. 2016-06-01 11:27:25 -04:00
init.c Copyright consolidation 08/10 2016-05-17 14:51:34 -04:00
LPdir_nyi.c Copyright consolidation 06/10 2016-05-17 14:51:04 -04:00
LPdir_unix.c Copyright consolidation 08/10 2016-05-17 14:51:34 -04:00
LPdir_vms.c Copyright consolidation 05/10 2016-05-17 15:38:09 -04:00
LPdir_win.c Copyright consolidation 09/10 2016-05-17 14:53:16 -04:00
LPdir_win32.c Copyright consolidation 09/10 2016-05-17 14:53:16 -04:00
LPdir_wince.c Copyright consolidation 05/10 2016-05-17 15:38:09 -04:00
mem.c Copyright consolidation 06/10 2016-05-17 14:51:04 -04:00
mem_clr.c Copyright consolidation 06/10 2016-05-17 14:51:04 -04:00
mem_dbg.c Copyright consolidation 05/10 2016-05-17 15:38:09 -04:00
mem_sec.c Copyright consolidation 06/10 2016-05-17 14:51:04 -04:00
o_dir.c Copyright consolidation 05/10 2016-05-17 15:38:09 -04:00
o_fips.c Copyright consolidation 04/10 2016-05-17 14:24:46 -04:00
o_init.c Copyright consolidation 08/10 2016-05-17 14:51:34 -04:00
o_str.c Remove internal functions OPENSSL_strcasecmp and OPENSSL_strncasecmp 2016-05-28 02:15:04 +02:00
o_time.c Copyright consolidation 09/10 2016-05-17 14:53:16 -04:00
pariscid.pl Add assembly CRYPTO_memcmp. 2016-05-19 22:33:00 +02:00
ppc_arch.h GH919: Fix wrappers for two headers 2016-05-24 11:04:38 -04:00
ppccap.c Copyright consolidation 09/10 2016-05-17 14:53:16 -04:00
ppccpuid.pl Add assembly CRYPTO_memcmp. 2016-05-19 22:33:00 +02:00
s390xcap.c Copyright consolidation 09/10 2016-05-17 14:53:16 -04:00
s390xcpuid.S Add final(?) set of copyrights. 2016-06-01 11:27:25 -04:00
sparc_arch.h Copyright consolidation 09/10 2016-05-17 14:53:16 -04:00
sparccpuid.S Add final(?) set of copyrights. 2016-06-01 11:27:25 -04:00
sparcv9cap.c Copyright consolidation 09/10 2016-05-17 14:53:16 -04:00
threads_none.c Copyright consolidation 04/10 2016-05-17 14:24:46 -04:00
threads_pthread.c Copyright consolidation 09/10 2016-05-17 14:53:16 -04:00
threads_win.c Fix Windows 64 bit crashes 2016-05-20 23:08:18 +01:00
uid.c Copyright consolidation 07/10 2016-05-17 14:51:26 -04:00
vms_rms.h Copyright consolidation 09/10 2016-05-17 14:53:16 -04:00
x86_64cpuid.pl x86_64 assembly pack: tolerate spaces in source directory name. 2016-05-29 14:12:51 +02:00
x86cpuid.pl Add assembly CRYPTO_memcmp. 2016-05-19 22:33:00 +02:00