From 96a76c79e40a5d6853c660fc2a980d084b0eaafd Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Sat, 13 Oct 2012 14:20:31 +0100 Subject: launch: libvirt: Make handle data conditional on HAVE_LIBVIRT. This means that we can use virConnectPtr and virDomainPtr instead of using void* types. In the case where libvirt support is disabled or not present, effectively nothing changes. --- src/guestfs-internal.h | 10 ++++++++-- src/launch-libvirt.c | 19 ++++++++++--------- 2 files changed, 18 insertions(+), 11 deletions(-) (limited to 'src') diff --git a/src/guestfs-internal.h b/src/guestfs-internal.h index 84145a3b..784f7627 100644 --- a/src/guestfs-internal.h +++ b/src/guestfs-internal.h @@ -28,6 +28,10 @@ #include +#ifdef HAVE_LIBVIRT +#include +#endif + #include "hash.h" #ifndef SOCK_CLOEXEC @@ -310,10 +314,12 @@ struct guestfs_h int virtio_scsi; /* See function qemu_supports_virtio_scsi */ } app; +#ifdef HAVE_LIBVIRT struct { /* Used only by src/launch-libvirt.c. */ - void *connv; /* libvirt connection (really virConnectPtr) */ - void *domv; /* libvirt domain (really virDomainPtr) */ + virConnectPtr conn; /* libvirt connection */ + virDomainPtr dom; /* libvirt domain */ } virt; +#endif }; /* Per-filesystem data stored for inspect_os. */ diff --git a/src/launch-libvirt.c b/src/launch-libvirt.c index ad250826..4f015e3a 100644 --- a/src/launch-libvirt.c +++ b/src/launch-libvirt.c @@ -403,8 +403,8 @@ launch_libvirt (guestfs_h *g, const char *libvirt_uri) guestfs___launch_send_progress (g, 12); - g->virt.connv = conn; - g->virt.domv = dom; + g->virt.conn = conn; + g->virt.dom = dom; free (kernel); free (initrd); @@ -1312,8 +1312,8 @@ drive_free_priv (void *priv) static int shutdown_libvirt (guestfs_h *g, int check_for_errors) { - virConnectPtr conn = g->virt.connv; - virDomainPtr dom = g->virt.domv; + virConnectPtr conn = g->virt.conn; + virDomainPtr dom = g->virt.dom; int ret = 0; int flags; @@ -1333,7 +1333,8 @@ shutdown_libvirt (guestfs_h *g, int check_for_errors) if (conn != NULL) virConnectClose (conn); - g->virt.connv = g->virt.domv = NULL; + g->virt.conn = NULL; + g->virt.dom = NULL; return ret; } @@ -1383,8 +1384,8 @@ static xmlChar *construct_libvirt_xml_hot_add_disk (guestfs_h *g, struct drive * static int hot_add_drive_libvirt (guestfs_h *g, struct drive *drv, size_t drv_index) { - virConnectPtr conn = g->virt.connv; - virDomainPtr dom = g->virt.domv; + virConnectPtr conn = g->virt.conn; + virDomainPtr dom = g->virt.dom; xmlChar *xml = NULL; if (!conn || !dom) { @@ -1423,8 +1424,8 @@ hot_add_drive_libvirt (guestfs_h *g, struct drive *drv, size_t drv_index) static int hot_remove_drive_libvirt (guestfs_h *g, struct drive *drv, size_t drv_index) { - virConnectPtr conn = g->virt.connv; - virDomainPtr dom = g->virt.domv; + virConnectPtr conn = g->virt.conn; + virDomainPtr dom = g->virt.dom; xmlChar *xml = NULL; if (!conn || !dom) { -- cgit