qemu/include/crypto
Geert Martin Ijewski a37278169d crypto: qcrypto_random_bytes() now works on windows w/o any other crypto libs
If no crypto library is included in the build, QEMU uses
qcrypto_random_bytes() to generate random data. That function tried to open
/dev/urandom or /dev/random and if opening both files failed it errored out.

Those files obviously do not exist on windows, so there the code uses
CryptGenRandom().

Furthermore there was some refactoring and a new function
qcrypto_random_init() was introduced. If a proper crypto library (gnutls or
libgcrypt) is included in the build, this function does nothing. If neither
is included it initializes the (platform specific) handles that are used by
qcrypto_random_bytes().
Either:
* a handle to /dev/urandom | /dev/random on unix like systems
* a handle to a cryptographic service provider on windows

Signed-off-by: Geert Martin Ijewski <gm.ijewski@web.de>
Signed-off-by: Daniel P. Berrange <berrange@redhat.com>
2017-05-09 14:41:47 +01:00
..
aes.h crypto: aes: always rename internal symbols 2016-06-13 12:41:17 +01:00
afsplit.h Clean up ill-advised or unusual header guards 2016-07-12 16:20:46 +02:00
block.h crypto: move 'opaque' parameter to (nearly) the end of parameter list 2017-05-09 14:41:47 +01:00
cipher.h crypto: add CTR mode support 2016-10-19 10:09:24 +01:00
desrfb.h Clean up header guards that don't match their file name 2016-07-12 16:19:16 +02:00
hash.h Clean up ill-advised or unusual header guards 2016-07-12 16:20:46 +02:00
init.h Clean up ill-advised or unusual header guards 2016-07-12 16:20:46 +02:00
ivgen.h Clean up ill-advised or unusual header guards 2016-07-12 16:20:46 +02:00
pbkdf.h crypto: use correct derived key size when timing pbkdf 2016-09-19 16:30:45 +01:00
random.h crypto: qcrypto_random_bytes() now works on windows w/o any other crypto libs 2017-05-09 14:41:47 +01:00
secret.h Clean up ill-advised or unusual header guards 2016-07-12 16:20:46 +02:00
tlscreds.h Clean up header guards that don't match their file name 2016-07-12 16:19:16 +02:00
tlscredsanon.h Clean up header guards that don't match their file name 2016-07-12 16:19:16 +02:00
tlscredsx509.h Clean up header guards that don't match their file name 2016-07-12 16:19:16 +02:00
tlssession.h Clean up header guards that don't match their file name 2016-07-12 16:19:16 +02:00
xts.h Clean up ill-advised or unusual header guards 2016-07-12 16:20:46 +02:00