Accepting request 232966 from Virtualization

- Update to libvirt 1.2.4
  - Primarily a bug-fix release.  See http://libvirt.org/news.html
    for a detailed list of bug fixes and improvements
  - Drop upstream patches:
    0e0c1a74-domid-fix.patch, 7a1452f5-libxl-empty-cdrom.patch
- libxl: Support ACPI shutdown event
  b98bf811-add-paravirt-shutdown-flag.patch,
  c4fe29f8-use-shutdown-flag.patch, da744120-use-reboot-flag.patch
  bnc#872777
- libx: Support migration
  libxl-migration-support.patch
  bnc#875193

- CVE-2014-0179: Don't expand entities when parsing XML
  d6b27d3e-CVE-2014-0179.patch
  bnc#873705

OBS-URL: https://build.opensuse.org/request/show/232966
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/libvirt?expand=0&rev=144
This commit is contained in:
Stephan Kulow 2014-05-08 10:39:04 +00:00 committed by Git OBS Bridge
commit d3a65a18e6
24 changed files with 1452 additions and 134 deletions

View File

@ -1,8 +1,18 @@
Index: libvirt-1.2.3/docs/schemas/storagevol.rng
commit ccc0b45917fa76a77ff83f1ddfd30836c8c3805e
Author: Chunyan Liu <cyliu@suse.com>
Date: Wed May 7 12:45:40 2014 +0800
add nocow to vol xml
Updated patch. Rebase to git master.
Signed-off-by: Chunyan Liu <cyliu@suse.com>
Index: libvirt-1.2.4/docs/schemas/storagevol.rng
===================================================================
--- libvirt-1.2.3.orig/docs/schemas/storagevol.rng
+++ libvirt-1.2.3/docs/schemas/storagevol.rng
@@ -139,6 +139,11 @@
--- libvirt-1.2.4.orig/docs/schemas/storagevol.rng
+++ libvirt-1.2.4/docs/schemas/storagevol.rng
@@ -138,6 +138,11 @@
<ref name='compat'/>
</optional>
<optional>
@ -14,11 +24,11 @@ Index: libvirt-1.2.3/docs/schemas/storagevol.rng
<ref name='fileFormatFeatures'/>
</optional>
</interleave>
Index: libvirt-1.2.3/src/conf/storage_conf.c
Index: libvirt-1.2.4/src/conf/storage_conf.c
===================================================================
--- libvirt-1.2.3.orig/src/conf/storage_conf.c
+++ libvirt-1.2.3/src/conf/storage_conf.c
@@ -1401,6 +1401,9 @@ virStorageVolDefParseXML(virStoragePoolD
--- libvirt-1.2.4.orig/src/conf/storage_conf.c
+++ libvirt-1.2.4/src/conf/storage_conf.c
@@ -1395,6 +1395,9 @@ virStorageVolDefParseXML(virStoragePoolD
virStringFreeList(version);
}
@ -28,22 +38,10 @@ Index: libvirt-1.2.3/src/conf/storage_conf.c
if (options->featureFromString && virXPathNode("./target/features", ctxt)) {
if ((n = virXPathNodeSet("./target/features/*", ctxt, &nodes)) < 0)
goto error;
Index: libvirt-1.2.3/src/conf/storage_conf.h
Index: libvirt-1.2.4/src/storage/storage_backend.c
===================================================================
--- libvirt-1.2.3.orig/src/conf/storage_conf.h
+++ libvirt-1.2.3/src/conf/storage_conf.h
@@ -90,6 +90,7 @@ struct _virStorageVolTarget {
virStorageEncryptionPtr encryption;
virBitmapPtr features;
char *compat;
+ bool nocow;
};
typedef struct _virStorageVolDef virStorageVolDef;
Index: libvirt-1.2.3/src/storage/storage_backend.c
===================================================================
--- libvirt-1.2.3.orig/src/storage/storage_backend.c
+++ libvirt-1.2.3/src/storage/storage_backend.c
--- libvirt-1.2.4.orig/src/storage/storage_backend.c
+++ libvirt-1.2.4/src/storage/storage_backend.c
@@ -37,6 +37,9 @@
#ifdef __linux__
# include <sys/ioctl.h>
@ -54,7 +52,7 @@ Index: libvirt-1.2.3/src/storage/storage_backend.c
#endif
#if WITH_SELINUX
@@ -449,6 +452,21 @@ virStorageBackendCreateRaw(virConnectPtr
@@ -452,6 +455,21 @@ virStorageBackendCreateRaw(virConnectPtr
goto cleanup;
}
@ -76,7 +74,7 @@ Index: libvirt-1.2.3/src/storage/storage_backend.c
if ((ret = createRawFile(fd, vol, inputvol)) < 0)
/* createRawFile already reported the exact error. */
ret = -1;
@@ -712,6 +730,7 @@ virStorageBackendCreateQemuImgOpts(char
@@ -717,6 +735,7 @@ virStorageBackendCreateQemuImgOpts(char
bool preallocate,
int format,
const char *compat,
@ -84,7 +82,7 @@ Index: libvirt-1.2.3/src/storage/storage_backend.c
virBitmapPtr features)
{
virBuffer buf = VIR_BUFFER_INITIALIZER;
@@ -724,6 +743,8 @@ virStorageBackendCreateQemuImgOpts(char
@@ -729,6 +748,8 @@ virStorageBackendCreateQemuImgOpts(char
virBufferAddLit(&buf, "encryption=on,");
if (preallocate)
virBufferAddLit(&buf, "preallocation=metadata,");
@ -93,7 +91,7 @@ Index: libvirt-1.2.3/src/storage/storage_backend.c
if (compat)
virBufferAsprintf(&buf, "compat=%s,", compat);
@@ -945,6 +966,7 @@ virStorageBackendCreateQemuImgCmd(virCon
@@ -950,6 +971,7 @@ virStorageBackendCreateQemuImgCmd(virCon
do_encryption, preallocate,
vol->target.format,
compat,
@ -101,3 +99,15 @@ Index: libvirt-1.2.3/src/storage/storage_backend.c
vol->target.features) < 0) {
virCommandFree(cmd);
return NULL;
Index: libvirt-1.2.4/src/util/virstoragefile.h
===================================================================
--- libvirt-1.2.4.orig/src/util/virstoragefile.h
+++ libvirt-1.2.4/src/util/virstoragefile.h
@@ -228,6 +228,7 @@ struct _virStorageSource {
int format; /* enum virStorageFileFormat */
virBitmapPtr features;
char *compat;
+ bool nocow;
virStoragePermsPtr perms;
virStorageTimestampsPtr timestamps;

View File

@ -0,0 +1,106 @@
commit b98bf81151446b34dde59217dec19f93981c8047
Author: Jim Fehlig <jfehlig@suse.com>
Date: Thu May 1 11:42:54 2014 -0600
Introduce a new flag for controlling shutdown/reboot
Add a new flag to virDomain{Reboot,Shutdown}FlagValues to allow
shutting down and rebooting a domain via the Xen paravirt control
interface.
Index: libvirt-1.2.4/include/libvirt/libvirt.h.in
===================================================================
--- libvirt-1.2.4.orig/include/libvirt/libvirt.h.in
+++ libvirt-1.2.4/include/libvirt/libvirt.h.in
@@ -1652,6 +1652,7 @@ typedef enum {
VIR_DOMAIN_SHUTDOWN_GUEST_AGENT = (1 << 1), /* Use guest agent */
VIR_DOMAIN_SHUTDOWN_INITCTL = (1 << 2), /* Use initctl */
VIR_DOMAIN_SHUTDOWN_SIGNAL = (1 << 3), /* Send a signal */
+ VIR_DOMAIN_SHUTDOWN_PARAVIRT = (1 << 4), /* Use paravirt guest control */
} virDomainShutdownFlagValues;
int virDomainShutdown (virDomainPtr domain);
@@ -1664,6 +1665,7 @@ typedef enum {
VIR_DOMAIN_REBOOT_GUEST_AGENT = (1 << 1), /* Use guest agent */
VIR_DOMAIN_REBOOT_INITCTL = (1 << 2), /* Use initctl */
VIR_DOMAIN_REBOOT_SIGNAL = (1 << 3), /* Send a signal */
+ VIR_DOMAIN_REBOOT_PARAVIRT = (1 << 4), /* Use paravirt guest control */
} virDomainRebootFlagValues;
int virDomainReboot (virDomainPtr domain,
Index: libvirt-1.2.4/tools/virsh-domain.c
===================================================================
--- libvirt-1.2.4.orig/tools/virsh-domain.c
+++ libvirt-1.2.4/tools/virsh-domain.c
@@ -4837,7 +4837,7 @@ static const vshCmdOptDef opts_shutdown[
},
{.name = "mode",
.type = VSH_OT_STRING,
- .help = N_("shutdown mode: acpi|agent|initctl|signal")
+ .help = N_("shutdown mode: acpi|agent|initctl|signal|paravirt")
},
{.name = NULL}
};
@@ -4872,9 +4872,12 @@ cmdShutdown(vshControl *ctl, const vshCm
flags |= VIR_DOMAIN_SHUTDOWN_INITCTL;
} else if (STREQ(mode, "signal")) {
flags |= VIR_DOMAIN_SHUTDOWN_SIGNAL;
+ } else if (STREQ(mode, "paravirt")) {
+ flags |= VIR_DOMAIN_SHUTDOWN_PARAVIRT;
} else {
vshError(ctl, _("Unknown mode %s value, expecting "
- "'acpi', 'agent', 'initctl' or 'signal'"), mode);
+ "'acpi', 'agent', 'initctl', 'signal', "
+ "or 'paravirt'"), mode);
goto cleanup;
}
tmp++;
@@ -4923,7 +4926,7 @@ static const vshCmdOptDef opts_reboot[]
},
{.name = "mode",
.type = VSH_OT_STRING,
- .help = N_("shutdown mode: acpi|agent|initctl|signal")
+ .help = N_("shutdown mode: acpi|agent|initctl|signal|paravirt")
},
{.name = NULL}
};
@@ -4957,9 +4960,12 @@ cmdReboot(vshControl *ctl, const vshCmd
flags |= VIR_DOMAIN_REBOOT_INITCTL;
} else if (STREQ(mode, "signal")) {
flags |= VIR_DOMAIN_REBOOT_SIGNAL;
+ } else if (STREQ(mode, "paravirt")) {
+ flags |= VIR_DOMAIN_REBOOT_PARAVIRT;
} else {
vshError(ctl, _("Unknown mode %s value, expecting "
- "'acpi', 'agent', 'initctl' or 'signal'"), mode);
+ "'acpi', 'agent', 'initctl', 'signal' "
+ "or 'paravirt'"), mode);
goto cleanup;
}
tmp++;
Index: libvirt-1.2.4/tools/virsh.pod
===================================================================
--- libvirt-1.2.4.orig/tools/virsh.pod
+++ libvirt-1.2.4/tools/virsh.pod
@@ -1302,8 +1302,8 @@ I<on_reboot> parameter in the domain's X
By default the hypervisor will try to pick a suitable shutdown
method. To specify an alternative method, the I<--mode> parameter
can specify a comma separated list which includes C<acpi>, C<agent>,
-C<initctl> and C<signal>. The order in which drivers will try each
-mode is undefined, and not related to the order specified to virsh.
+C<initctl>, C<signal> and C<paravirt>. The order in which drivers will
+try each mode is undefined, and not related to the order specified to virsh.
For strict control over ordering, use a single mode at a time and
repeat the command.
@@ -1781,8 +1781,8 @@ snapshot metadata with B<snapshot-create
By default the hypervisor will try to pick a suitable shutdown
method. To specify an alternative method, the I<--mode> parameter
can specify a comma separated list which includes C<acpi>, C<agent>,
-C<initctl> and C<signal>. The order in which drivers will try each
-mode is undefined, and not related to the order specified to virsh.
+C<initctl>, C<signal> and C<paravirt>. The order in which drivers will
+try each mode is undefined, and not related to the order specified to virsh.
For strict control over ordering, use a single mode at a time and
repeat the command.

View File

@ -0,0 +1,68 @@
commit c4fe29f88c4c1d5f571941e95c26246c8c84ce45
Author: Jim Fehlig <jfehlig@suse.com>
Date: Thu May 1 12:11:51 2014 -0600
libxl: support PARAVIRT and ACPI shutdown flags
Add support for VIR_DOMAIN_SHUTDOWN_PARAVIRT and
VIR_DOMAIN_SHUTDOWN_ACPI_POWER_BTN flags in
libxlDomainShutdownFlags().
Index: libvirt-1.2.4/src/libxl/libxl_driver.c
===================================================================
--- libvirt-1.2.4.orig/src/libxl/libxl_driver.c
+++ libvirt-1.2.4/src/libxl/libxl_driver.c
@@ -873,7 +873,11 @@ libxlDomainShutdownFlags(virDomainPtr do
int ret = -1;
libxlDomainObjPrivatePtr priv;
- virCheckFlags(0, -1);
+ virCheckFlags(VIR_DOMAIN_SHUTDOWN_ACPI_POWER_BTN |
+ VIR_DOMAIN_SHUTDOWN_PARAVIRT, -1);
+ if (flags == 0)
+ flags = VIR_DOMAIN_SHUTDOWN_PARAVIRT |
+ VIR_DOMAIN_SHUTDOWN_ACPI_POWER_BTN;
if (!(vm = libxlDomObjFromDomain(dom)))
goto cleanup;
@@ -888,18 +892,33 @@ libxlDomainShutdownFlags(virDomainPtr do
}
priv = vm->privateData;
- if (libxl_domain_shutdown(priv->ctx, vm->def->id) != 0) {
+ if (flags & VIR_DOMAIN_SHUTDOWN_PARAVIRT) {
+ ret = libxl_domain_shutdown(priv->ctx, vm->def->id);
+ if (ret == 0)
+ goto cleanup;
+
+ if (ret != ERROR_NOPARAVIRT) {
+ virReportError(VIR_ERR_INTERNAL_ERROR,
+ _("Failed to shutdown domain '%d' with libxenlight"),
+ vm->def->id);
+ ret = -1;
+ goto cleanup;
+ }
+ ret = -1;
+ }
+
+ if (flags & VIR_DOMAIN_SHUTDOWN_ACPI_POWER_BTN) {
+ ret = libxl_send_trigger(priv->ctx, vm->def->id,
+ LIBXL_TRIGGER_POWER, 0);
+ if (ret == 0)
+ goto cleanup;
+
virReportError(VIR_ERR_INTERNAL_ERROR,
_("Failed to shutdown domain '%d' with libxenlight"),
vm->def->id);
- goto cleanup;
+ ret = -1;
}
- /* vm is marked shutoff (or removed from domains list if not persistent)
- * in shutdown event handler.
- */
- ret = 0;
-
cleanup:
if (vm)
virObjectUnlock(vm);

View File

@ -0,0 +1,34 @@
commit d6b27d3e4c40946efa79e91d134616b41b1666c4
Author: Daniel P. Berrange <berrange@redhat.com>
Date: Tue Apr 15 11:20:29 2014 +0100
LSN-2014-0003: Don't expand entities when parsing XML
If the XML_PARSE_NOENT flag is passed to libxml2, then any
entities in the input document will be fully expanded. This
allows the user to read arbitrary files on the host machine
by creating an entity pointing to a local file. Removing
the XML_PARSE_NOENT flag means that any entities are left
unchanged by the parser, or expanded to "" by the XPath
APIs.
Signed-off-by: Daniel P. Berrange <berrange@redhat.com>
Index: libvirt-1.2.4/src/util/virxml.c
===================================================================
--- libvirt-1.2.4.orig/src/util/virxml.c
+++ libvirt-1.2.4/src/util/virxml.c
@@ -746,11 +746,11 @@ virXMLParseHelper(int domcode,
if (filename) {
xml = xmlCtxtReadFile(pctxt, filename, NULL,
- XML_PARSE_NOENT | XML_PARSE_NONET |
+ XML_PARSE_NONET |
XML_PARSE_NOWARNING);
} else {
xml = xmlCtxtReadDoc(pctxt, BAD_CAST xmlStr, url, NULL,
- XML_PARSE_NOENT | XML_PARSE_NONET |
+ XML_PARSE_NONET |
XML_PARSE_NOWARNING);
}
if (!xml)

View File

@ -0,0 +1,44 @@
commit da7441204635f4692c729af089ad455365f37b2f
Author: Jim Fehlig <jfehlig@suse.com>
Date: Thu May 1 15:00:47 2014 -0600
libxl: support PARAVIRT reboot flag
Add support for the VIR_DOMAIN_REBOOT_PARAVIRT flag in
libxlDomainReboot().
Index: libvirt-1.2.4/src/libxl/libxl_driver.c
===================================================================
--- libvirt-1.2.4.orig/src/libxl/libxl_driver.c
+++ libvirt-1.2.4/src/libxl/libxl_driver.c
@@ -939,7 +939,9 @@ libxlDomainReboot(virDomainPtr dom, unsi
int ret = -1;
libxlDomainObjPrivatePtr priv;
- virCheckFlags(0, -1);
+ virCheckFlags(VIR_DOMAIN_REBOOT_PARAVIRT, -1);
+ if (flags == 0)
+ flags = VIR_DOMAIN_REBOOT_PARAVIRT;
if (!(vm = libxlDomObjFromDomain(dom)))
goto cleanup;
@@ -954,13 +956,16 @@ libxlDomainReboot(virDomainPtr dom, unsi
}
priv = vm->privateData;
- if (libxl_domain_reboot(priv->ctx, vm->def->id) != 0) {
+ if (flags & VIR_DOMAIN_REBOOT_PARAVIRT) {
+ ret = libxl_domain_reboot(priv->ctx, vm->def->id);
+ if (ret == 0)
+ goto cleanup;
+
virReportError(VIR_ERR_INTERNAL_ERROR,
_("Failed to reboot domain '%d' with libxenlight"),
vm->def->id);
- goto cleanup;
+ ret = -1;
}
- ret = 0;
cleanup:
if (vm)

View File

@ -1,7 +1,7 @@
Index: libvirt-1.2.3/tests/vircgrouptest.c
Index: libvirt-1.2.4/tests/vircgrouptest.c
===================================================================
--- libvirt-1.2.3.orig/tests/vircgrouptest.c
+++ libvirt-1.2.3/tests/vircgrouptest.c
--- libvirt-1.2.4.orig/tests/vircgrouptest.c
+++ libvirt-1.2.4/tests/vircgrouptest.c
@@ -33,7 +33,6 @@
# include "virlog.h"
# include "virfile.h"
@ -41,7 +41,7 @@ Index: libvirt-1.2.3/tests/vircgrouptest.c
-
- if ((rv = virCgroupGetPercpuStats(cgroup,
- params,
- 2, 0, 1)) < 0) {
- 2, 0, 1, 0)) < 0) {
- fprintf(stderr, "Failed call to virCgroupGetPercpuStats for /virtualmachines cgroup: %d\n", -rv);
- goto cleanup;
- }

View File

@ -8,10 +8,10 @@ uses the 'device_configure' RPC.
This patch changes the xend driver to always call 'device_configure' for
PCI devices to be consistent with the usage in the xen tools.
Index: libvirt-1.2.3/src/xen/xend_internal.c
Index: libvirt-1.2.4/src/xen/xend_internal.c
===================================================================
--- libvirt-1.2.3.orig/src/xen/xend_internal.c
+++ libvirt-1.2.3/src/xen/xend_internal.c
--- libvirt-1.2.4.orig/src/xen/xend_internal.c
+++ libvirt-1.2.4/src/xen/xend_internal.c
@@ -2219,6 +2219,7 @@ xenDaemonAttachDeviceFlags(virConnectPtr
virBuffer buf = VIR_BUFFER_INITIALIZER;
char class[8], ref[80];

View File

@ -1,7 +1,7 @@
Index: libvirt-1.2.3/src/lxc/lxc_container.c
Index: libvirt-1.2.4/src/lxc/lxc_container.c
===================================================================
--- libvirt-1.2.3.orig/src/lxc/lxc_container.c
+++ libvirt-1.2.3/src/lxc/lxc_container.c
--- libvirt-1.2.4.orig/src/lxc/lxc_container.c
+++ libvirt-1.2.4/src/lxc/lxc_container.c
@@ -164,12 +164,19 @@ int lxcContainerHasReboot(void)
VIR_FREE(buf);
cmd = v ? LINUX_REBOOT_CMD_CAD_ON : LINUX_REBOOT_CMD_CAD_OFF;

View File

@ -1,7 +1,7 @@
Index: libvirt-1.2.3/examples/apparmor/Makefile.am
Index: libvirt-1.2.4/examples/apparmor/Makefile.am
===================================================================
--- libvirt-1.2.3.orig/examples/apparmor/Makefile.am
+++ libvirt-1.2.3/examples/apparmor/Makefile.am
--- libvirt-1.2.4.orig/examples/apparmor/Makefile.am
+++ libvirt-1.2.4/examples/apparmor/Makefile.am
@@ -18,10 +18,22 @@ EXTRA_DIST= \
TEMPLATE \
libvirt-qemu \
@ -27,10 +27,10 @@ Index: libvirt-1.2.3/examples/apparmor/Makefile.am
apparmordir = $(sysconfdir)/apparmor.d/
apparmor_DATA = \
usr.lib.libvirt.virt-aa-helper \
Index: libvirt-1.2.3/examples/apparmor/usr.lib.libvirt.virt-aa-helper.in
Index: libvirt-1.2.4/examples/apparmor/usr.lib.libvirt.virt-aa-helper.in
===================================================================
--- /dev/null
+++ libvirt-1.2.3/examples/apparmor/usr.lib.libvirt.virt-aa-helper.in
+++ libvirt-1.2.4/examples/apparmor/usr.lib.libvirt.virt-aa-helper.in
@@ -0,0 +1,48 @@
+# Last Modified: Mon Apr 5 15:10:27 2010
+#include <tunables/global>
@ -80,10 +80,10 @@ Index: libvirt-1.2.3/examples/apparmor/usr.lib.libvirt.virt-aa-helper.in
+ /**.[iI][sS][oO] r,
+ /**/disk{,.*} r,
+}
Index: libvirt-1.2.3/examples/apparmor/usr.sbin.libvirtd.in
Index: libvirt-1.2.4/examples/apparmor/usr.sbin.libvirtd.in
===================================================================
--- /dev/null
+++ libvirt-1.2.3/examples/apparmor/usr.sbin.libvirtd.in
+++ libvirt-1.2.4/examples/apparmor/usr.sbin.libvirtd.in
@@ -0,0 +1,67 @@
+# Last Modified: Mon Apr 5 15:03:58 2010
+#include <tunables/global>
@ -152,9 +152,9 @@ Index: libvirt-1.2.3/examples/apparmor/usr.sbin.libvirtd.in
+ change_profile -> @{LIBVIRT}-[0-9a-f]*-[0-9a-f]*-[0-9a-f]*-[0-9a-f]*-[0-9a-f]*,
+
+}
Index: libvirt-1.2.3/examples/apparmor/usr.lib.libvirt.virt-aa-helper
Index: libvirt-1.2.4/examples/apparmor/usr.lib.libvirt.virt-aa-helper
===================================================================
--- libvirt-1.2.3.orig/examples/apparmor/usr.lib.libvirt.virt-aa-helper
--- libvirt-1.2.4.orig/examples/apparmor/usr.lib.libvirt.virt-aa-helper
+++ /dev/null
@@ -1,48 +0,0 @@
-# Last Modified: Mon Apr 5 15:10:27 2010
@ -205,9 +205,9 @@ Index: libvirt-1.2.3/examples/apparmor/usr.lib.libvirt.virt-aa-helper
- /**.[iI][sS][oO] r,
- /**/disk{,.*} r,
-}
Index: libvirt-1.2.3/examples/apparmor/usr.sbin.libvirtd
Index: libvirt-1.2.4/examples/apparmor/usr.sbin.libvirtd
===================================================================
--- libvirt-1.2.3.orig/examples/apparmor/usr.sbin.libvirtd
--- libvirt-1.2.4.orig/examples/apparmor/usr.sbin.libvirtd
+++ /dev/null
@@ -1,63 +0,0 @@
-# Last Modified: Mon Apr 5 15:03:58 2010

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:030e1da22cbdd98427de96f087e0fbea5f15a2685799af161b4001f287175973
size 20734026

3
libvirt-1.2.4.tar.bz2 Normal file
View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:414b076d2de6c0e2f701b06ba2c6409caf017e46a40bd50bb359e4e012bbb3d1
size 20655047

View File

@ -1,9 +1,9 @@
Adjust libvirt-guests init files to conform to SUSE standards
Index: libvirt-1.2.3/tools/libvirt-guests.init.in
Index: libvirt-1.2.4/tools/libvirt-guests.init.in
===================================================================
--- libvirt-1.2.3.orig/tools/libvirt-guests.init.in
+++ libvirt-1.2.3/tools/libvirt-guests.init.in
--- libvirt-1.2.4.orig/tools/libvirt-guests.init.in
+++ libvirt-1.2.4/tools/libvirt-guests.init.in
@@ -3,15 +3,15 @@
# the following is the LSB init header
#
@ -28,10 +28,10 @@ Index: libvirt-1.2.3/tools/libvirt-guests.init.in
### END INIT INFO
# the following is chkconfig init header
Index: libvirt-1.2.3/tools/libvirt-guests.sh.in
Index: libvirt-1.2.4/tools/libvirt-guests.sh.in
===================================================================
--- libvirt-1.2.3.orig/tools/libvirt-guests.sh.in
+++ libvirt-1.2.3/tools/libvirt-guests.sh.in
--- libvirt-1.2.4.orig/tools/libvirt-guests.sh.in
+++ libvirt-1.2.4/tools/libvirt-guests.sh.in
@@ -16,14 +16,13 @@
# License along with this library. If not, see
# <http://www.gnu.org/licenses/>.
@ -100,7 +100,7 @@ Index: libvirt-1.2.3/tools/libvirt-guests.sh.in
# test_connect URI
# check if URI is reachable
test_connect()
@@ -114,7 +134,7 @@ list_guests() {
@@ -116,7 +136,7 @@ list_guests() {
list=$(run_virsh_c "$uri" list --uuid $persistent)
if [ $? -ne 0 ]; then
@ -109,7 +109,7 @@ Index: libvirt-1.2.3/tools/libvirt-guests.sh.in
return 1
fi
@@ -140,7 +160,7 @@ guest_is_on() {
@@ -142,7 +162,7 @@ guest_is_on() {
guest_running=false
id=$(run_virsh "$uri" domid "$uuid")
if [ $? -ne 0 ]; then
@ -118,7 +118,7 @@ Index: libvirt-1.2.3/tools/libvirt-guests.sh.in
return 1
fi
@@ -188,6 +208,12 @@ start() {
@@ -190,6 +210,12 @@ start() {
test_connect "$uri" || continue
@ -131,7 +131,7 @@ Index: libvirt-1.2.3/tools/libvirt-guests.sh.in
eval_gettext "Resuming guests on \$uri URI..."; echo
for guest in $list; do
name=$(guest_name "$uri" "$guest")
@@ -401,7 +427,7 @@ shutdown_guests_parallel()
@@ -403,7 +429,7 @@ shutdown_guests_parallel()
timeout=$(($timeout - 1))
if [ $timeout -le 0 ]; then
eval_gettext "Timeout expired while shutting down domains"; echo
@ -140,7 +140,7 @@ Index: libvirt-1.2.3/tools/libvirt-guests.sh.in
return
fi
else
@@ -429,7 +455,7 @@ stop() {
@@ -431,7 +457,7 @@ stop() {
if [ $SHUTDOWN_TIMEOUT -lt 0 ]; then
gettext "SHUTDOWN_TIMEOUT must be equal or greater than 0"
echo
@ -149,7 +149,7 @@ Index: libvirt-1.2.3/tools/libvirt-guests.sh.in
return
fi
fi
@@ -477,14 +503,14 @@ stop() {
@@ -479,14 +505,14 @@ stop() {
if [ $? -ne 0 ]; then
eval_gettext "Failed to list persistent guests on \$uri"
echo
@ -166,7 +166,7 @@ Index: libvirt-1.2.3/tools/libvirt-guests.sh.in
set +f
return
fi
@@ -543,14 +569,13 @@ gueststatus() {
@@ -545,14 +571,13 @@ gueststatus() {
rh_status() {
if [ -f "$LISTFILE" ]; then
gettext "stopped, with saved guests"; echo
@ -183,16 +183,16 @@ Index: libvirt-1.2.3/tools/libvirt-guests.sh.in
fi
fi
}
@@ -595,4 +620,4 @@ case "$1" in
@@ -597,4 +622,4 @@ case "$1" in
usage
;;
esac
-exit $RETVAL
+rc_exit
Index: libvirt-1.2.3/tools/libvirt-guests.sysconf
Index: libvirt-1.2.4/tools/libvirt-guests.sysconf
===================================================================
--- libvirt-1.2.3.orig/tools/libvirt-guests.sysconf
+++ libvirt-1.2.3/tools/libvirt-guests.sysconf
--- libvirt-1.2.4.orig/tools/libvirt-guests.sysconf
+++ libvirt-1.2.4/tools/libvirt-guests.sysconf
@@ -1,19 +1,29 @@
+## Path: System/Virtualization/libvirt-guests
+

View File

@ -1,8 +1,8 @@
Index: libvirt-1.2.3/configure.ac
Index: libvirt-1.2.4/configure.ac
===================================================================
--- libvirt-1.2.3.orig/configure.ac
+++ libvirt-1.2.3/configure.ac
@@ -231,6 +231,7 @@ LIBVIRT_CHECK_FUSE
--- libvirt-1.2.4.orig/configure.ac
+++ libvirt-1.2.4/configure.ac
@@ -237,6 +237,7 @@ LIBVIRT_CHECK_FUSE
LIBVIRT_CHECK_GLUSTER
LIBVIRT_CHECK_HAL
LIBVIRT_CHECK_NETCF
@ -10,7 +10,7 @@ Index: libvirt-1.2.3/configure.ac
LIBVIRT_CHECK_NUMACTL
LIBVIRT_CHECK_OPENWSMAN
LIBVIRT_CHECK_PCIACCESS
@@ -2374,11 +2375,12 @@ if test "$with_libvirtd" = "no" ; then
@@ -2409,11 +2410,12 @@ if test "$with_libvirtd" = "no" ; then
with_interface=no
fi
@ -26,7 +26,7 @@ Index: libvirt-1.2.3/configure.ac
esac
if test "$with_interface" = "yes" ; then
@@ -2772,6 +2774,7 @@ LIBVIRT_RESULT_FUSE
@@ -2808,6 +2810,7 @@ LIBVIRT_RESULT_FUSE
LIBVIRT_RESULT_GLUSTER
LIBVIRT_RESULT_HAL
LIBVIRT_RESULT_NETCF
@ -34,11 +34,11 @@ Index: libvirt-1.2.3/configure.ac
LIBVIRT_RESULT_NUMACTL
LIBVIRT_RESULT_OPENWSMAN
LIBVIRT_RESULT_PCIACCESS
Index: libvirt-1.2.3/src/Makefile.am
Index: libvirt-1.2.4/src/Makefile.am
===================================================================
--- libvirt-1.2.3.orig/src/Makefile.am
+++ libvirt-1.2.3/src/Makefile.am
@@ -807,6 +807,10 @@ if WITH_NETCF
--- libvirt-1.2.4.orig/src/Makefile.am
+++ libvirt-1.2.4/src/Makefile.am
@@ -812,6 +812,10 @@ if WITH_NETCF
INTERFACE_DRIVER_SOURCES += \
interface/interface_backend_netcf.c
endif WITH_NETCF
@ -49,7 +49,7 @@ Index: libvirt-1.2.3/src/Makefile.am
if WITH_UDEV
INTERFACE_DRIVER_SOURCES += \
interface/interface_backend_udev.c
@@ -1396,10 +1400,15 @@ if WITH_NETCF
@@ -1402,10 +1406,15 @@ if WITH_NETCF
libvirt_driver_interface_la_CFLAGS += $(NETCF_CFLAGS)
libvirt_driver_interface_la_LIBADD += $(NETCF_LIBS)
else ! WITH_NETCF
@ -65,11 +65,11 @@ Index: libvirt-1.2.3/src/Makefile.am
endif ! WITH_NETCF
if WITH_DRIVER_MODULES
libvirt_driver_interface_la_LIBADD += ../gnulib/lib/libgnu.la
Index: libvirt-1.2.3/tools/virsh.c
Index: libvirt-1.2.4/tools/virsh.c
===================================================================
--- libvirt-1.2.3.orig/tools/virsh.c
+++ libvirt-1.2.3/tools/virsh.c
@@ -3251,6 +3251,8 @@ vshShowVersion(vshControl *ctl ATTRIBUTE
--- libvirt-1.2.4.orig/tools/virsh.c
+++ libvirt-1.2.4/tools/virsh.c
@@ -3252,6 +3252,8 @@ vshShowVersion(vshControl *ctl ATTRIBUTE
vshPrint(ctl, " Interface");
# if defined(WITH_NETCF)
vshPrint(ctl, " netcf");
@ -78,10 +78,10 @@ Index: libvirt-1.2.3/tools/virsh.c
# elif defined(WITH_UDEV)
vshPrint(ctl, " udev");
# endif
Index: libvirt-1.2.3/src/interface/interface_backend_netcf.c
Index: libvirt-1.2.4/src/interface/interface_backend_netcf.c
===================================================================
--- libvirt-1.2.3.orig/src/interface/interface_backend_netcf.c
+++ libvirt-1.2.3/src/interface/interface_backend_netcf.c
--- libvirt-1.2.4.orig/src/interface/interface_backend_netcf.c
+++ libvirt-1.2.4/src/interface/interface_backend_netcf.c
@@ -23,7 +23,12 @@
#include <config.h>
@ -165,10 +165,10 @@ Index: libvirt-1.2.3/src/interface/interface_backend_netcf.c
return 0;
}
Index: libvirt-1.2.3/src/interface/interface_driver.c
Index: libvirt-1.2.4/src/interface/interface_driver.c
===================================================================
--- libvirt-1.2.3.orig/src/interface/interface_driver.c
+++ libvirt-1.2.3/src/interface/interface_driver.c
--- libvirt-1.2.4.orig/src/interface/interface_driver.c
+++ libvirt-1.2.4/src/interface/interface_driver.c
@@ -30,8 +30,15 @@ interfaceRegister(void)
if (netcfIfaceRegister() == 0)
return 0;
@ -186,10 +186,10 @@ Index: libvirt-1.2.3/src/interface/interface_driver.c
if (udevIfaceRegister() == 0)
return 0;
#endif /* WITH_UDEV */
Index: libvirt-1.2.3/m4/virt-netcontrol.m4
Index: libvirt-1.2.4/m4/virt-netcontrol.m4
===================================================================
--- /dev/null
+++ libvirt-1.2.3/m4/virt-netcontrol.m4
+++ libvirt-1.2.4/m4/virt-netcontrol.m4
@@ -0,0 +1,35 @@
+dnl The libnetcontrol library
+dnl

View File

@ -1,3 +1,26 @@
-------------------------------------------------------------------
Tue May 6 11:53:14 MDT 2014 - jfehlig@suse.com
- Update to libvirt 1.2.4
- Primarily a bug-fix release. See http://libvirt.org/news.html
for a detailed list of bug fixes and improvements
- Drop upstream patches:
0e0c1a74-domid-fix.patch, 7a1452f5-libxl-empty-cdrom.patch
- libxl: Support ACPI shutdown event
b98bf811-add-paravirt-shutdown-flag.patch,
c4fe29f8-use-shutdown-flag.patch, da744120-use-reboot-flag.patch
bnc#872777
- libx: Support migration
libxl-migration-support.patch
bnc#875193
-------------------------------------------------------------------
Mon May 5 16:47:43 MDT 2014 - jfehlig@suse.com
- CVE-2014-0179: Don't expand entities when parsing XML
d6b27d3e-CVE-2014-0179.patch
bnc#873705
-------------------------------------------------------------------
Tue Apr 8 09:44:50 MDT 2014 - jfehlig@suse.com

View File

@ -235,7 +235,7 @@
Name: libvirt
Url: http://libvirt.org/
Version: 1.2.3
Version: 1.2.4
Release: 0
Summary: Library providing a simple virtualization API
License: LGPL-2.1+
@ -428,13 +428,17 @@ Source1: libvirtd.init
Source2: libvirtd-relocation-server.fw
Source99: baselibs.conf
# Upstream patches
Patch0: 0e0c1a74-domid-fix.patch
Patch1: 7a1452f5-libxl-empty-cdrom.patch
Patch0: b98bf811-add-paravirt-shutdown-flag.patch
Patch1: c4fe29f8-use-shutdown-flag.patch
Patch2: da744120-use-reboot-flag.patch
Patch3: d6b27d3e-CVE-2014-0179.patch
# Need to go upstream
Patch100: xen-name-for-devid.patch
Patch101: ia64-clone.patch
Patch102: xen-pv-cdrom.patch
Patch103: add-nocow-to-vol-xml.patch
# pending review upstream patches
Patch150: libxl-migration-support.patch
# Our patches
Patch200: libvirtd-defaults.patch
Patch201: libvirtd-init-script.patch
@ -948,10 +952,13 @@ namespaces.
%setup -q
%patch0 -p1
%patch1 -p1
%patch2 -p1
%patch3 -p1
%patch100 -p1
%patch101 -p1
%patch102 -p1
%patch103 -p1
%patch150 -p1
%patch200 -p1
%patch201 -p1
%patch202 -p1
@ -1319,8 +1326,7 @@ rm -rf $RPM_BUILD_ROOT
cd tests
make
# These tests don't current work in a mock build root
# qemuargv2xmltest: needs qemu user/group to be setup
for i in nodeinfotest seclabeltest qemuxml2argvtest
for i in nodeinfotest seclabeltest
do
rm -f $i
printf 'int main(void) { return 0; }' > $i.c
@ -1748,8 +1754,7 @@ fi
%{_datadir}/libvirt/schemas/nodedev.rng
%{_datadir}/libvirt/schemas/nwfilter.rng
%{_datadir}/libvirt/schemas/secret.rng
%{_datadir}/libvirt/schemas/storageencryption.rng
%{_datadir}/libvirt/schemas/storagefilefeatures.rng
%{_datadir}/libvirt/schemas/storagecommon.rng
%{_datadir}/libvirt/schemas/storagepool.rng
%{_datadir}/libvirt/schemas/storagevol.rng
%{_datadir}/libvirt/cpu_map.xml

View File

@ -1,7 +1,7 @@
Index: libvirt-1.2.3/daemon/libvirtd.conf
Index: libvirt-1.2.4/daemon/libvirtd.conf
===================================================================
--- libvirt-1.2.3.orig/daemon/libvirtd.conf
+++ libvirt-1.2.3/daemon/libvirtd.conf
--- libvirt-1.2.4.orig/daemon/libvirtd.conf
+++ libvirt-1.2.4/daemon/libvirtd.conf
@@ -18,8 +18,8 @@
# It is necessary to setup a CA and issue server certificates before
# using this capability.
@ -13,10 +13,10 @@ Index: libvirt-1.2.3/daemon/libvirtd.conf
# Listen for unencrypted TCP connections on the public TCP/IP port.
# NB, must pass the --listen flag to the libvirtd process for this to
Index: libvirt-1.2.3/daemon/libvirtd-config.c
Index: libvirt-1.2.4/daemon/libvirtd-config.c
===================================================================
--- libvirt-1.2.3.orig/daemon/libvirtd-config.c
+++ libvirt-1.2.3/daemon/libvirtd-config.c
--- libvirt-1.2.4.orig/daemon/libvirtd-config.c
+++ libvirt-1.2.4/daemon/libvirtd-config.c
@@ -229,7 +229,7 @@ daemonConfigNew(bool privileged ATTRIBUT
if (VIR_ALLOC(data) < 0)
return NULL;
@ -26,10 +26,10 @@ Index: libvirt-1.2.3/daemon/libvirtd-config.c
data->listen_tcp = 0;
if (VIR_STRDUP(data->tls_port, LIBVIRTD_TLS_PORT) < 0 ||
Index: libvirt-1.2.3/daemon/test_libvirtd.aug.in
Index: libvirt-1.2.4/daemon/test_libvirtd.aug.in
===================================================================
--- libvirt-1.2.3.orig/daemon/test_libvirtd.aug.in
+++ libvirt-1.2.3/daemon/test_libvirtd.aug.in
--- libvirt-1.2.4.orig/daemon/test_libvirtd.aug.in
+++ libvirt-1.2.4/daemon/test_libvirtd.aug.in
@@ -2,7 +2,7 @@ module Test_libvirtd =
::CONFIG::

View File

@ -1,9 +1,9 @@
Adjust libvirtd sysconfig file to conform to SUSE standards
Index: libvirt-1.2.3/daemon/libvirtd.sysconf
Index: libvirt-1.2.4/daemon/libvirtd.sysconf
===================================================================
--- libvirt-1.2.3.orig/daemon/libvirtd.sysconf
+++ libvirt-1.2.3/daemon/libvirtd.sysconf
--- libvirt-1.2.4.orig/daemon/libvirtd.sysconf
+++ libvirt-1.2.4/daemon/libvirtd.sysconf
@@ -1,16 +1,25 @@
+## Path: System/Virtualization/libvirt
+

File diff suppressed because it is too large Load Diff

View File

@ -8,10 +8,10 @@ Subject: [PATCH] support managed pci devices in xen driver
src/xenxs/xen_xm.c | 28 +++++++++++++++++++++++++++-
2 files changed, 35 insertions(+), 15 deletions(-)
Index: libvirt-1.2.3/src/xenxs/xen_sxpr.c
Index: libvirt-1.2.4/src/xenxs/xen_sxpr.c
===================================================================
--- libvirt-1.2.3.orig/src/xenxs/xen_sxpr.c
+++ libvirt-1.2.3/src/xenxs/xen_sxpr.c
--- libvirt-1.2.4.orig/src/xenxs/xen_sxpr.c
+++ libvirt-1.2.4/src/xenxs/xen_sxpr.c
@@ -997,6 +997,7 @@ xenParseSxprPCI(virDomainDefPtr def,
int busID;
int slotID;
@ -78,10 +78,10 @@ Index: libvirt-1.2.3/src/xenxs/xen_sxpr.c
xenFormatSxprPCI(def->hostdevs[i], buf);
}
}
Index: libvirt-1.2.3/src/xenxs/xen_xm.c
Index: libvirt-1.2.4/src/xenxs/xen_xm.c
===================================================================
--- libvirt-1.2.3.orig/src/xenxs/xen_xm.c
+++ libvirt-1.2.3/src/xenxs/xen_xm.c
--- libvirt-1.2.4.orig/src/xenxs/xen_xm.c
+++ libvirt-1.2.4/src/xenxs/xen_xm.c
@@ -807,6 +807,8 @@ xenParseXM(virConfPtr conf, int xendConf
int busID;
int slotID;

View File

@ -1,7 +1,7 @@
Index: libvirt-1.2.3/src/qemu/qemu.conf
Index: libvirt-1.2.4/src/qemu/qemu.conf
===================================================================
--- libvirt-1.2.3.orig/src/qemu/qemu.conf
+++ libvirt-1.2.3/src/qemu/qemu.conf
--- libvirt-1.2.4.orig/src/qemu/qemu.conf
+++ libvirt-1.2.4/src/qemu/qemu.conf
@@ -200,7 +200,16 @@
# a special value; security_driver can be set to that value in
# isolation, but it cannot appear in a list of drivers.

View File

@ -1,7 +1,7 @@
Index: libvirt-1.2.3/daemon/libvirtd.service.in
Index: libvirt-1.2.4/daemon/libvirtd.service.in
===================================================================
--- libvirt-1.2.3.orig/daemon/libvirtd.service.in
+++ libvirt-1.2.3/daemon/libvirtd.service.in
--- libvirt-1.2.4.orig/daemon/libvirtd.service.in
+++ libvirt-1.2.4/daemon/libvirtd.service.in
@@ -10,6 +10,8 @@ After=network.target
After=dbus.service
After=iscsid.service

View File

@ -1,9 +1,9 @@
Adjust virtlockd init files to conform to SUSE standards
Index: libvirt-1.2.3/src/locking/virtlockd.sysconf
Index: libvirt-1.2.4/src/locking/virtlockd.sysconf
===================================================================
--- libvirt-1.2.3.orig/src/locking/virtlockd.sysconf
+++ libvirt-1.2.3/src/locking/virtlockd.sysconf
--- libvirt-1.2.4.orig/src/locking/virtlockd.sysconf
+++ libvirt-1.2.4/src/locking/virtlockd.sysconf
@@ -1,3 +1,7 @@
+## Path: System/Virtualization/virtlockd
+
@ -12,10 +12,10 @@ Index: libvirt-1.2.3/src/locking/virtlockd.sysconf
#
# Pass extra arguments to virtlockd
#VIRTLOCKD_ARGS=
Index: libvirt-1.2.3/src/locking/virtlockd.init.in
Index: libvirt-1.2.4/src/locking/virtlockd.init.in
===================================================================
--- libvirt-1.2.3.orig/src/locking/virtlockd.init.in
+++ libvirt-1.2.3/src/locking/virtlockd.init.in
--- libvirt-1.2.4.orig/src/locking/virtlockd.init.in
+++ libvirt-1.2.4/src/locking/virtlockd.init.in
@@ -4,12 +4,14 @@
# http://www.linux-foundation.org/spec//booksets/LSB-Core-generic/LSB-Core-generic.html#INITSCRCOMCONV
#

View File

@ -14,10 +14,10 @@
is inactive. We obviously can't search xenstore when the domain is
inactive.
Index: libvirt-1.2.3/src/xen/xend_internal.c
Index: libvirt-1.2.4/src/xen/xend_internal.c
===================================================================
--- libvirt-1.2.3.orig/src/xen/xend_internal.c
+++ libvirt-1.2.3/src/xen/xend_internal.c
--- libvirt-1.2.4.orig/src/xen/xend_internal.c
+++ libvirt-1.2.4/src/xen/xend_internal.c
@@ -72,7 +72,7 @@ VIR_LOG_INIT("xen.xend_internal");
#define XEND_RCV_BUF_MAX_LEN (256 * 1024)

View File

@ -1,7 +1,7 @@
Index: libvirt-1.2.3/src/xenxs/xen_sxpr.c
Index: libvirt-1.2.4/src/xenxs/xen_sxpr.c
===================================================================
--- libvirt-1.2.3.orig/src/xenxs/xen_sxpr.c
+++ libvirt-1.2.3/src/xenxs/xen_sxpr.c
--- libvirt-1.2.4.orig/src/xenxs/xen_sxpr.c
+++ libvirt-1.2.4/src/xenxs/xen_sxpr.c
@@ -332,7 +332,7 @@ xenParseSxprChar(const char *value,
static int
xenParseSxprDisks(virDomainDefPtr def,