qemu-patch-raspberry4/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.c
afsplit.c
block-luks.c
block-luks.h
block-qcow.c
block-qcow.h
block.c
blockpriv.h
cipher-builtin.c
cipher-gcrypt.c
cipher-nettle.c
cipher.c
desrfb.c
hash-gcrypt.c
hash-glib.c
hash-nettle.c
hash.c
hmac-gcrypt.c
hmac-glib.c
hmac-nettle.c
hmac.c
hmac.h
init.c crypto: qcrypto_random_bytes() now works on windows w/o any other crypto libs 2017-05-09 14:41:47 +01:00
ivgen-essiv.c
ivgen-essiv.h
ivgen-plain.c
ivgen-plain.h
ivgen-plain64.c
ivgen-plain64.h
ivgen.c
ivgenpriv.h
Makefile.objs
pbkdf-gcrypt.c
pbkdf-nettle.c
pbkdf-stub.c
pbkdf.c
random-gcrypt.c crypto: qcrypto_random_bytes() now works on windows w/o any other crypto libs 2017-05-09 14:41:47 +01:00
random-gnutls.c crypto: qcrypto_random_bytes() now works on windows w/o any other crypto libs 2017-05-09 14:41:47 +01:00
random-platform.c crypto: qcrypto_random_bytes() now works on windows w/o any other crypto libs 2017-05-09 14:41:47 +01:00
secret.c
tlscreds.c
tlscredsanon.c
tlscredspriv.h
tlscredsx509.c
tlssession.c
trace-events
xts.c