From 73c4e38eee4e34b1272cd878cf2d552a78d01b590ea48be235fb37ea0a32b614 Mon Sep 17 00:00:00 2001 From: Olaf Hering Date: Tue, 9 Oct 2012 12:19:30 +0000 Subject: [PATCH] use suggested upstream version of 0001-launch-appliance-is-optional.patch OBS-URL: https://build.opensuse.org/package/show/Virtualization/libguestfs?expand=0&rev=127 --- 0001-launch-appliance-is-optional.patch | 63 +++++++++++++++++++------ 1 file changed, 48 insertions(+), 15 deletions(-) diff --git a/0001-launch-appliance-is-optional.patch b/0001-launch-appliance-is-optional.patch index c0f43d3..6f5351c 100644 --- a/0001-launch-appliance-is-optional.patch +++ b/0001-launch-appliance-is-optional.patch @@ -1,6 +1,6 @@ -From 7abe52ae73d918b515098842b19cb54888729b72 Mon Sep 17 00:00:00 2001 +From f93f1538649d96d1b11eb7a4368aac0496acc2bc Mon Sep 17 00:00:00 2001 From: Olaf Hering -Date: Mon, 8 Oct 2012 19:51:38 +0200 +Date: Mon, 8 Oct 2012 20:10:36 +0200 Subject: [PATCH] launch: appliance is optional # virt-filesystems -v -d 6326ad4e-5805-2ab4-1338-d1dad8c76162 --all @@ -18,24 +18,57 @@ libguestfs: closing guestfs handle 0x656270 (state 0) Signed-off-by: Olaf Hering --- - src/launch-libvirt.c | 4 ++++ - 1 Datei geändert, 4 Zeilen hinzugefügt(+) + src/launch-libvirt.c | 22 ++++++++++++++-------- + 1 file changed, 14 insertions(+), 8 deletions(-) diff --git a/src/launch-libvirt.c b/src/launch-libvirt.c -index d678266..5914642 100644 +index 5b7897d..183008e 100644 --- a/src/launch-libvirt.c +++ b/src/launch-libvirt.c -@@ -936,6 +936,10 @@ construct_libvirt_xml_appliance (guestfs_h *g, xmlTextWriterPtr xo, - char drive_name[64] = "sd"; - char scsi_target[64]; +@@ -194,10 +194,13 @@ launch_libvirt (guestfs_h *g, const char *libvirt_uri) -+ /* appliance is optional */ -+ if (appliance == NULL) -+ return 0; -+ - guestfs___drive_name (drv_index, &drive_name[2]); - snprintf (scsi_target, sizeof scsi_target, "%zu", drv_index); + /* Create overlays for read-only drives and the appliance. This + * works around lack of support for disks in libvirt. ++ * Note that appliance can be NULL if using the old-style appliance. + */ +- appliance_overlay = make_qcow2_overlay (g, appliance, "raw"); +- if (!appliance_overlay) +- goto cleanup; ++ if (appliance) { ++ appliance_overlay = make_qcow2_overlay (g, appliance, "raw"); ++ if (!appliance_overlay) ++ goto cleanup; ++ } + ITER_DRIVES (g, i, drv) { + if (make_qcow2_overlay_for_drive (g, drv) == -1) +@@ -393,7 +396,8 @@ launch_libvirt (guestfs_h *g, const char *libvirt_uri) + goto cleanup; + } + +- guestfs___add_dummy_appliance_drive (g); ++ if (appliance) ++ guestfs___add_dummy_appliance_drive (g); + + TRACE0 (launch_libvirt_end); + +@@ -739,10 +743,12 @@ construct_libvirt_xml_devices (guestfs_h *g, xmlTextWriterPtr xo, + goto err; + } + +- /* Appliance disk. */ +- if (construct_libvirt_xml_appliance (g, xo, appliance_overlay, +- appliance_index) == -1) +- goto err; ++ if (appliance_overlay) { ++ /* Appliance disk. */ ++ if (construct_libvirt_xml_appliance (g, xo, appliance_overlay, ++ appliance_index) == -1) ++ goto err; ++ } + + /* Console. */ + XMLERROR (-1, xmlTextWriterStartElement (xo, BAD_CAST "serial")); -- -1.7.12.1 +1.7.10.4