mirror of
https://github.com/Motorhead1991/qemu.git
synced 2025-08-04 08:13:54 -06:00
crypto: introduce new module for computing hash digests
Introduce a new crypto/ directory that will (eventually) contain all the cryptographic related code. This initially defines a wrapper for initializing gnutls and for computing hashes with gnutls. The former ensures that gnutls is guaranteed to be initialized exactly once in QEMU regardless of CLI args. The block quorum code currently fails to initialize gnutls so it only works by luck, if VNC server TLS is not requested. The hash APIs avoids the need to litter the rest of the code with preprocessor checks and simplifies callers by allocating the correct amount of memory for the requested hash. Signed-off-by: Daniel P. Berrange <berrange@redhat.com> Message-Id: <1435770638-25715-2-git-send-email-berrange@redhat.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
This commit is contained in:
parent
6b3f7f639e
commit
ddbb0d0966
12 changed files with 752 additions and 0 deletions
7
vl.c
7
vl.c
|
@ -121,6 +121,7 @@ int main(int argc, char **argv)
|
|||
#include "qom/object_interfaces.h"
|
||||
#include "qapi-event.h"
|
||||
#include "exec/semihost.h"
|
||||
#include "crypto/init.h"
|
||||
|
||||
#define MAX_VIRTIO_CONSOLES 1
|
||||
#define MAX_SCLP_CONSOLES 1
|
||||
|
@ -2958,6 +2959,7 @@ int main(int argc, char **argv, char **envp)
|
|||
uint64_t ram_slots = 0;
|
||||
FILE *vmstate_dump_file = NULL;
|
||||
Error *main_loop_err = NULL;
|
||||
Error *err = NULL;
|
||||
|
||||
qemu_init_cpu_loop();
|
||||
qemu_mutex_lock_iothread();
|
||||
|
@ -3001,6 +3003,11 @@ int main(int argc, char **argv, char **envp)
|
|||
|
||||
runstate_init();
|
||||
|
||||
if (qcrypto_init(&err) < 0) {
|
||||
fprintf(stderr, "Cannot initialize crypto: %s\n",
|
||||
error_get_pretty(err));
|
||||
exit(1);
|
||||
}
|
||||
rtc_clock = QEMU_CLOCK_HOST;
|
||||
|
||||
QLIST_INIT (&vm_change_state_head);
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue