Skip to content
Commit a3727816 authored by Geert Martin Ijewski's avatar Geert Martin Ijewski Committed by Daniel P. Berrange
Browse files

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: default avatarGeert Martin Ijewski <gm.ijewski@web.de>
Signed-off-by: default avatarDaniel P. Berrange <berrange@redhat.com>
parent e4a3507e
Loading
Loading
Loading
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment