diff --git a/10404671-systemd-build-fix.patch b/10404671-systemd-build-fix.patch new file mode 100644 index 0000000..bfc8073 --- /dev/null +++ b/10404671-systemd-build-fix.patch @@ -0,0 +1,210 @@ +commit 104046712f10106574f08661a395891dc5c5ca3d +Author: Eric Blake +Date: Fri Dec 9 11:06:19 2011 -0700 + + build: follow directory install conventions + + Commit 4d9e51f6 fixed a 'make uninstall' failure, but failed + to follow other conventions already present in src/Makefile.am. + In particular, we prefer MKDIR_P over mkdir -p, and should + have a matching rmdir during uninstall for every directory + created during install (the idea being that uninstall in a + DESTDIR should be clean, while installation in the final + system should not fail with non-empty directories left behind). + + * tools/Makefile.am (install-sysconfig, install-initscript) + (install-systemd): Use MKDIR_P. + (uninstall-sysconfig, uninstall-initscript, uninstall-systemd): + Also remove directories. + * daemon/Makefile.am (install-data-local, install-data-polkit) + (install-logrotate, install-sysconfig, install-sysctl) + (install-init-redhat, install-init-upstart, install-init-systemd) + (install-data-sasl): Use MKDIR_P. + (uninstall-data-polkit, uninstall-sysconfig, uninstall-sysctl) + (uninstall-init-redhat, uninstall-init-upstart) + (uninstall-init-systemd): Also remove directory. + (uninstall-logrotate): New rule. + (uninstall-local): Add uninstall-logrotate. + +Index: libvirt-0.9.8/daemon/Makefile.am +=================================================================== +--- libvirt-0.9.8.orig/daemon/Makefile.am ++++ libvirt-0.9.8/daemon/Makefile.am +@@ -173,23 +173,24 @@ endif + install-data-local: install-init-redhat install-init-systemd install-init-upstart \ + install-data-sasl install-data-polkit \ + install-logrotate install-sysctl +- mkdir -p $(DESTDIR)$(localstatedir)/log/libvirt +- mkdir -p $(DESTDIR)$(localstatedir)/run/libvirt +- mkdir -p $(DESTDIR)$(localstatedir)/lib/libvirt ++ $(MKDIR_P) $(DESTDIR)$(localstatedir)/log/libvirt \ ++ $(DESTDIR)$(localstatedir)/run/libvirt \ ++ $(DESTDIR)$(localstatedir)/lib/libvirt + + uninstall-local:: uninstall-init-redhat uninstall-init-systemd uninstall-init-upstart \ + uninstall-data-sasl uninstall-data-polkit \ +- uninstall-sysctl ++ uninstall-logrotate uninstall-sysctl + rmdir $(DESTDIR)$(localstatedir)/log/libvirt || : + rmdir $(DESTDIR)$(localstatedir)/run/libvirt || : + rmdir $(DESTDIR)$(localstatedir)/lib/libvirt || : + + if HAVE_POLKIT + install-data-polkit:: +- mkdir -p $(DESTDIR)$(policydir) ++ $(MKDIR_P) $(DESTDIR)$(policydir) + $(INSTALL_DATA) $(srcdir)/$(policyfile) $(DESTDIR)$(policydir)/org.libvirt.unix.policy + uninstall-data-polkit:: + rm -f $(DESTDIR)$(policydir)/org.libvirt.unix.policy ++ rmdir $(DESTDIR)$(policydir) || : + else + install-data-polkit:: + uninstall-data-polkit:: +@@ -228,41 +229,54 @@ libvirtd.uml.logrotate: libvirtd.uml.log + mv $@-t $@ + + install-logrotate: $(LOGROTATE_CONFS) +- mkdir -p $(DESTDIR)$(localstatedir)/log/libvirt/qemu/ +- mkdir -p $(DESTDIR)$(localstatedir)/log/libvirt/lxc/ +- mkdir -p $(DESTDIR)$(localstatedir)/log/libvirt/uml/ +- mkdir -p $(DESTDIR)$(sysconfdir)/logrotate.d/ ++ $(MKDIR_P) $(DESTDIR)$(localstatedir)/log/libvirt/qemu/ \ ++ $(DESTDIR)$(localstatedir)/log/libvirt/lxc/ \ ++ $(DESTDIR)$(localstatedir)/log/libvirt/uml/ \ ++ $(DESTDIR)$(sysconfdir)/logrotate.d/ + $(INSTALL_DATA) libvirtd.logrotate $(DESTDIR)$(sysconfdir)/logrotate.d/libvirtd + $(INSTALL_DATA) libvirtd.qemu.logrotate $(DESTDIR)$(sysconfdir)/logrotate.d/libvirtd.qemu + $(INSTALL_DATA) libvirtd.lxc.logrotate $(DESTDIR)$(sysconfdir)/logrotate.d/libvirtd.lxc + $(INSTALL_DATA) libvirtd.uml.logrotate $(DESTDIR)$(sysconfdir)/logrotate.d/libvirtd.uml + ++uninstall-logrotate: ++ rm -f $(DESTDIR)$(sysconfdir)/logrotate.d/libvirtd \ ++ $(DESTDIR)$(sysconfdir)/logrotate.d/libvirtd.qemu \ ++ $(DESTDIR)$(sysconfdir)/logrotate.d/libvirtd.lxc \ ++ $(DESTDIR)$(sysconfdir)/logrotate.d/libvirtd.uml ++ rmdir $(DESTDIR)$(localstatedir)/log/libvirt/qemu || : ++ rmdir $(DESTDIR)$(localstatedir)/log/libvirt/lxc || : ++ rmdir $(DESTDIR)$(localstatedir)/log/libvirt/uml || : ++ rmdir $(DESTDIR)$(sysconfdir)/logrotate.d || : ++ + install-sysconfig: +- mkdir -p $(DESTDIR)$(sysconfdir)/sysconfig ++ $(MKDIR_P) $(DESTDIR)$(sysconfdir)/sysconfig + $(INSTALL_DATA) $(srcdir)/libvirtd.sysconf \ + $(DESTDIR)$(sysconfdir)/sysconfig/libvirtd + uninstall-sysconfig: + rm -f $(DESTDIR)$(sysconfdir)/sysconfig/libvirtd ++ rmdir $(DESTDIR)$(sysconfdir)/sysconfig || : + + install-sysctl: +- mkdir -p $(DESTDIR)$(sysconfdir)/sysctl.d ++ $(MKDIR_P) $(DESTDIR)$(sysconfdir)/sysctl.d + $(INSTALL_DATA) $(srcdir)/libvirtd.sysctl \ + $(DESTDIR)$(sysconfdir)/sysctl.d/libvirtd + + uninstall-sysctl: + rm -f $(DESTDIR)$(sysconfdir)/sysctl.d/libvirtd ++ rmdir $(DESTDIR)$(sysconfdir)/sysctl.d || : + + if LIBVIRT_INIT_SCRIPT_RED_HAT + + BUILT_SOURCES += libvirtd.init + + install-init-redhat: install-sysconfig libvirtd.init +- mkdir -p $(DESTDIR)$(sysconfdir)/rc.d/init.d ++ $(MKDIR_P) $(DESTDIR)$(sysconfdir)/rc.d/init.d + $(INSTALL_SCRIPT) libvirtd.init \ + $(DESTDIR)$(sysconfdir)/rc.d/init.d/libvirtd + + uninstall-init-redhat: uninstall-sysconfig + rm -f $(DESTDIR)$(sysconfdir)/rc.d/init.d/libvirtd ++ rmdir $(DESTDIR)$(sysconfdir)/rc.d/init.d || : + else + install-init-redhat: + uninstall-init-redhat: +@@ -272,12 +286,13 @@ endif # LIBVIRT_INIT_SCRIPT_RED_HAT + if LIBVIRT_INIT_SCRIPT_UPSTART + + install-init-upstart: install-sysconfig +- mkdir -p $(DESTDIR)$(sysconfdir)/event.d ++ $(MKDIR_P) $(DESTDIR)$(sysconfdir)/event.d + $(INSTALL_SCRIPT) libvirtd.upstart \ + $(DESTDIR)$(sysconfdir)/event.d/libvirtd + + uninstall-init-upstart: uninstall-sysconfig + rm -f $(DESTDIR)$(sysconfdir)/event.d/libvirtd ++ rmdir $(DESTDIR)$(sysconfdir)/event.d || : + else + install-init-upstart: + uninstall-init-upstart: +@@ -291,12 +306,13 @@ SYSTEMD_UNIT_DIR = /lib/systemd/system + BUILT_SOURCES += libvirtd.service + + install-init-systemd: install-sysconfig libvirtd.service +- mkdir -p $(DESTDIR)$(SYSTEMD_UNIT_DIR) ++ $(MKDIR_P) $(DESTDIR)$(SYSTEMD_UNIT_DIR) + $(INSTALL_SCRIPT) libvirtd.service \ + $(DESTDIR)$(SYSTEMD_UNIT_DIR)/libvirtd.service + + uninstall-init-systemd: uninstall-sysconfig + rm -f $(DESTDIR)$(SYSTEMD_UNIT_DIR)/libvirtd.service ++ rmdir $(DESTDIR)$(SYSTEMD_UNIT_DIR) || : + else + install-init-systemd: + uninstall-init-systemd: +@@ -346,7 +362,7 @@ $(srcdir)/libvirtd.8.in: libvirtd.pod.in + # the WITH_LIBVIRTD conditional + if HAVE_SASL + install-data-sasl: +- mkdir -p $(DESTDIR)$(sysconfdir)/sasl2/ ++ $(MKDIR_P) $(DESTDIR)$(sysconfdir)/sasl2/ + $(INSTALL_DATA) $(srcdir)/libvirtd.sasl $(DESTDIR)$(sysconfdir)/sasl2/libvirt.conf + + uninstall-data-sasl: +Index: libvirt-0.9.8/tools/Makefile.am +=================================================================== +--- libvirt-0.9.8.orig/tools/Makefile.am ++++ libvirt-0.9.8/tools/Makefile.am +@@ -153,23 +153,24 @@ install-data-local: install-init install + uninstall-local: uninstall-init uninstall-systemd + + install-sysconfig: +- mkdir -p $(DESTDIR)$(sysconfdir)/sysconfig ++ $(MKDIR_P) $(DESTDIR)$(sysconfdir)/sysconfig + $(INSTALL_DATA) $(srcdir)/libvirt-guests.sysconf \ + $(DESTDIR)$(sysconfdir)/sysconfig/libvirt-guests + + uninstall-sysconfig: + rm -f $(DESTDIR)$(sysconfdir)/sysconfig/libvirt-guests ++ rmdir $(DESTDIR)$(sysconfdir)/sysconfig ||: + + EXTRA_DIST += libvirt-guests.init.sh + + install-initscript: libvirt-guests.init +- mkdir -p $(DESTDIR)$(sysconfdir)/rc.d/init.d ++ $(MKDIR_P) $(DESTDIR)$(sysconfdir)/rc.d/init.d + $(INSTALL_SCRIPT) libvirt-guests.init \ + $(DESTDIR)$(sysconfdir)/rc.d/init.d/libvirt-guests + + uninstall-initscript: + rm -f $(DESTDIR)$(sysconfdir)/rc.d/init.d/libvirt-guests +- ++ rmdir $(DESTDIR)$(sysconfdir)/rc.d/init.d ||: + + + if LIBVIRT_INIT_SCRIPT_RED_HAT +@@ -201,12 +202,13 @@ SYSTEMD_UNIT_DIR = /lib/systemd/system + + if LIBVIRT_INIT_SCRIPT_SYSTEMD + install-systemd: libvirt-guests.service install-initscript install-sysconfig +- mkdir -p $(DESTDIR)$(SYSTEMD_UNIT_DIR) ++ $(MKDIR_P) $(DESTDIR)$(SYSTEMD_UNIT_DIR) + $(INSTALL_SCRIPT) libvirt-guests.service \ + $(DESTDIR)$(SYSTEMD_UNIT_DIR)/libvirt-guests.service + + uninstall-systemd: uninstall-initscript uninstall-sysconfig + rm -f $(DESTDIR)$(SYSTEMD_UNIT_DIR)/libvirt-guests.service ++ rmdir $(DESTDIR)$(SYSTEMD_UNIT_DIR) ||: + + BUILT_SOURCES += libvirt-guests.service + diff --git a/478a4d07-systemd-build-fix.patch b/478a4d07-systemd-build-fix.patch new file mode 100644 index 0000000..2a14444 --- /dev/null +++ b/478a4d07-systemd-build-fix.patch @@ -0,0 +1,81 @@ +commit 478a4d07ac489e9a52defe65290f1aeedc92393a +Author: Daniel P. Berrange +Date: Thu Dec 8 13:30:24 2011 +0000 + + Fix installation of libvirt-guests.service + + The installation rules for the libvirt-guests.service were + totally broken + + - Installing in the wrong location + - The location was not overridable + - The install-systemd rule was not invoked anywhere + - The install-systemd rule was not invoking install-initscript + which it depends on + - The installed service file lacked a .service extension + + * tools/Makefile.am: Fix install of libvirt-guests.service + +Index: libvirt-0.9.8/tools/Makefile.am +=================================================================== +--- libvirt-0.9.8.orig/tools/Makefile.am ++++ libvirt-0.9.8/tools/Makefile.am +@@ -148,9 +148,9 @@ endif + virsh.1: virsh.pod + $(AM_V_GEN)$(POD2MAN) $< $(srcdir)/$@ + +-install-data-local: install-init ++install-data-local: install-init install-systemd + +-uninstall-local: uninstall-init ++uninstall-local: uninstall-init uninstall-systemd + + install-sysconfig: + mkdir -p $(DESTDIR)$(sysconfdir)/sysconfig +@@ -162,17 +162,20 @@ uninstall-sysconfig: + + EXTRA_DIST += libvirt-guests.init.sh + +-if LIBVIRT_INIT_SCRIPT_RED_HAT +-install-init: libvirt-guests.init install-sysconfig ++install-initscript: libvirt-guests.init + mkdir -p $(DESTDIR)$(sysconfdir)/rc.d/init.d + $(INSTALL_SCRIPT) libvirt-guests.init \ + $(DESTDIR)$(sysconfdir)/rc.d/init.d/libvirt-guests + +-uninstall-init: install-sysconfig ++uninstall-initscript: + rm -f $(DESTDIR)$(sysconfdir)/rc.d/init.d/libvirt-guests + +-BUILT_SOURCES += libvirt-guests.init + ++ ++if LIBVIRT_INIT_SCRIPT_RED_HAT ++BUILT_SOURCES += libvirt-guests.init ++install-init: install-sysconfig install-initscript ++uninstall-init: uninstall-sysconfig uninstall-initscript + else + install-init: + uninstall-init: +@@ -194,14 +197,16 @@ libvirt-guests.init: libvirt-guests.init + + EXTRA_DIST += libvirt-guests.service.in + ++SYSTEMD_UNIT_DIR = /lib/systemd/system ++ + if LIBVIRT_INIT_SCRIPT_SYSTEMD +-install-systemd: libvirt-guests.service install-sysconfig +- mkdir -p $(DESTDIR)$(sysconfdir)/rc.d/systemd.d ++install-systemd: libvirt-guests.service install-initscript install-sysconfig ++ mkdir -p $(DESTDIR)$(SYSTEMD_UNIT_DIR) + $(INSTALL_SCRIPT) libvirt-guests.service \ +- $(DESTDIR)$(sysconfdir)/rc.d/systemd.d/libvirt-guests ++ $(DESTDIR)$(SYSTEMD_UNIT_DIR)/libvirt-guests.service + +-uninstall-systemd: install-sysconfig +- rm -f $(DESTDIR)$(sysconfdir)/rc.d/systemd.d/libvirt-guests ++uninstall-systemd: uninstall-initscript uninstall-sysconfig ++ rm -f $(DESTDIR)$(SYSTEMD_UNIT_DIR)/libvirt-guests.service + + BUILT_SOURCES += libvirt-guests.service + diff --git a/AF_PACKET.patch b/AF_PACKET.patch new file mode 100644 index 0000000..c654459 --- /dev/null +++ b/AF_PACKET.patch @@ -0,0 +1,26 @@ +Index: libvirt-0.9.8/src/util/virnetdev.c +=================================================================== +--- libvirt-0.9.8.orig/src/util/virnetdev.c ++++ libvirt-0.9.8/src/util/virnetdev.c +@@ -84,7 +84,7 @@ static int virNetDevSetupControlFull(con + static int virNetDevSetupControl(const char *ifname, + struct ifreq *ifr) + { +- return virNetDevSetupControlFull(ifname, ifr, AF_PACKET, SOCK_DGRAM); ++ return virNetDevSetupControlFull(ifname, ifr, AF_INET, SOCK_STREAM); + } + #endif + +Index: libvirt-0.9.8/src/util/virnetdevbridge.c +=================================================================== +--- libvirt-0.9.8.orig/src/util/virnetdevbridge.c ++++ libvirt-0.9.8/src/util/virnetdevbridge.c +@@ -84,7 +84,7 @@ static int virNetDevSetupControlFull(con + static int virNetDevSetupControl(const char *ifname, + struct ifreq *ifr) + { +- return virNetDevSetupControlFull(ifname, ifr, AF_PACKET, SOCK_DGRAM); ++ return virNetDevSetupControlFull(ifname, ifr, AF_INET, SOCK_STREAM); + } + #endif + diff --git a/a495365d-sexpr-empty-str.patch b/a495365d-sexpr-empty-str.patch deleted file mode 100644 index 962a420..0000000 --- a/a495365d-sexpr-empty-str.patch +++ /dev/null @@ -1,46 +0,0 @@ -commit a495365d09138bf0f07504cfe9b6ea2de858e18e -Author: Jim Fehlig -Date: Fri Nov 18 14:54:38 2011 -0700 - - Don't copy sexpr node value that is an empty string - - Xen4.1 initializes some unspecified sexpr config items to an empty - string, unlike previous Xen versions that would leave the item unset. - E.g. the kernel item for an HVM guest (non-direct kernel boot): - - Xen4.0 and earlier - ... - (image - (hvm - (kernel ) - ... - - Xen4.1 - ... - (image - (hvm - (kernel '') - ... - - The empty string for kernel causes some grief in subsequent parsing - where existence of specified kernel is checked, e.g. - - if (!def->os.kernel) - ... - - This patch solves the problem in sexpr_node_copy() by not copying - a node containing an empty string. - -Index: libvirt-0.9.7/src/util/sexpr.c -=================================================================== ---- libvirt-0.9.7.orig/src/util/sexpr.c -+++ libvirt-0.9.7/src/util/sexpr.c -@@ -519,7 +519,7 @@ int sexpr_node_copy(const struct sexpr * - { - const char *val = sexpr_node(sexpr, node); - -- if (val) { -+ if (val && *val) { - *dst = strdup(val); - if (!(*dst)) - return -1; diff --git a/ae1232b2-CVE-2011-4600.patch b/ae1232b2-CVE-2011-4600.patch new file mode 100644 index 0000000..1559b88 --- /dev/null +++ b/ae1232b2-CVE-2011-4600.patch @@ -0,0 +1,55 @@ +commit ae1232b298323dd7bef909426e2ebafa6bca9157 +Author: Laine Stump +Date: Tue Dec 6 15:13:50 2011 -0500 + + network: don't add iptables rules for externally managed networks + + This patch addresses https://bugzilla.redhat.com/show_bug.cgi?id=760442 + + When a network has any forward type other than route, nat or none, the + network configuration should be done completely external to libvirt - + libvirt only uses these types to allow configuring guests in a manner + that isn't tied to a specific host (all the host-specific information, + in particular interface names, port profile data, and bandwidth + configuration is in the network definition, and the guest + configuration only references it). + + Due to a bug in the bridge network driver, libvirt was adding iptables + rules for networks with forward type='bridge' etc. any time libvirtd + was restarted while one of these networks was active. + + This patch eliminates that error by only "reloading" iptables rules if + forward type is route, nat, or none. + +Index: libvirt-0.9.8/src/network/bridge_driver.c +=================================================================== +--- libvirt-0.9.8.orig/src/network/bridge_driver.c ++++ libvirt-0.9.8/src/network/bridge_driver.c +@@ -1470,14 +1470,22 @@ networkReloadIptablesRules(struct networ + VIR_INFO("Reloading iptables rules"); + + for (i = 0 ; i < driver->networks.count ; i++) { +- virNetworkObjLock(driver->networks.objs[i]); +- if (virNetworkObjIsActive(driver->networks.objs[i])) { +- networkRemoveIptablesRules(driver, driver->networks.objs[i]); +- if (networkAddIptablesRules(driver, driver->networks.objs[i]) < 0) { ++ virNetworkObjPtr network = driver->networks.objs[i]; ++ ++ virNetworkObjLock(network); ++ if (virNetworkObjIsActive(network) && ++ ((network->def->forwardType == VIR_NETWORK_FORWARD_NONE) || ++ (network->def->forwardType == VIR_NETWORK_FORWARD_NAT) || ++ (network->def->forwardType == VIR_NETWORK_FORWARD_ROUTE))) { ++ /* Only the three L3 network types that are configured by libvirt ++ * need to have iptables rules reloaded. ++ */ ++ networkRemoveIptablesRules(driver, network); ++ if (networkAddIptablesRules(driver, network) < 0) { + /* failed to add but already logged */ + } + } +- virNetworkObjUnlock(driver->networks.objs[i]); ++ virNetworkObjUnlock(network); + } + } + diff --git a/d47ab3fe-polkit0.patch b/d47ab3fe-polkit0.patch deleted file mode 100644 index f01a66d..0000000 --- a/d47ab3fe-polkit0.patch +++ /dev/null @@ -1,25 +0,0 @@ -commit d47ab3fe6115de6c54f999ba598fe58418840653 -Author: Jim Fehlig -Date: Wed Nov 16 11:35:08 2011 -0700 - - Fix build with polkit0 - - I missed adding virNetServerGetDBusConn() to libvirtd_private.syms - in commit b8adfcc6, which didn't cause a problem in 0.9.6 but - results in this build error in 0.9.7 - - libvirtd-remote.o: In function `remoteDispatchAuthPolkit': - remote.c:(.text+0x188dd): undefined reference to `virNetServerGetDBusConn' - -Index: libvirt-0.9.7/src/libvirt_private.syms -=================================================================== ---- libvirt-0.9.7.orig/src/libvirt_private.syms -+++ libvirt-0.9.7/src/libvirt_private.syms -@@ -1217,6 +1217,7 @@ virNetServerAddSignalHandler; - virNetServerAutoShutdown; - virNetServerClose; - virNetServerFree; -+virNetServerGetDBusConn; - virNetServerIsPrivileged; - virNetServerNew; - virNetServerQuit; diff --git a/dd8e8956-qemu-1.0.patch b/dd8e8956-qemu-1.0.patch deleted file mode 100644 index e627c13..0000000 --- a/dd8e8956-qemu-1.0.patch +++ /dev/null @@ -1,507 +0,0 @@ -commit dd8e8956060f38b084d581ed63f934c3d8202071 -Author: Jiri Denemark -Date: Fri Dec 2 21:20:15 2011 +0100 - - Add support for QEMU 1.0 - -Index: libvirt-0.9.7/src/qemu/qemu_capabilities.c -=================================================================== ---- libvirt-0.9.7.orig/src/qemu/qemu_capabilities.c -+++ libvirt-0.9.7/src/qemu/qemu_capabilities.c -@@ -1141,14 +1141,17 @@ int qemuCapsParseHelpStr(const char *qem - ++p; - - minor = virParseNumber(&p); -- if (minor == -1 || *p != '.') -+ if (minor == -1) - goto fail; - -- ++p; -- -- micro = virParseNumber(&p); -- if (micro == -1) -- goto fail; -+ if (*p != '.') { -+ micro = 0; -+ } else { -+ ++p; -+ micro = virParseNumber(&p); -+ if (micro == -1) -+ goto fail; -+ } - - SKIP_BLANKS(p); - -Index: libvirt-0.9.7/tests/qemuhelpdata/qemu-1.0 -=================================================================== ---- /dev/null -+++ libvirt-0.9.7/tests/qemuhelpdata/qemu-1.0 -@@ -0,0 +1,252 @@ -+QEMU emulator version 1.0, Copyright (c) 2003-2008 Fabrice Bellard -+usage: qemu [options] [disk_image] -+ -+'disk_image' is a raw hard disk image for IDE hard disk 0 -+ -+Standard options: -+-h or -help display this help and exit -+-version display version information and exit -+-machine [type=]name[,prop[=value][,...]] -+ selects emulated machine (-machine ? for list) -+ property accel=accel1[:accel2[:...]] selects accelerator -+ supported accelerators are kvm, xen, tcg (default: tcg) -+-cpu cpu select CPU (-cpu ? for list) -+-smp n[,maxcpus=cpus][,cores=cores][,threads=threads][,sockets=sockets] -+ set the number of CPUs to 'n' [default=1] -+ maxcpus= maximum number of total cpus, including -+ offline CPUs for hotplug, etc -+ cores= number of CPU cores on one socket -+ threads= number of threads on one CPU core -+ sockets= number of discrete sockets in the system -+-numa node[,mem=size][,cpus=cpu[-cpu]][,nodeid=node] -+-fda/-fdb file use 'file' as floppy disk 0/1 image -+-hda/-hdb file use 'file' as IDE hard disk 0/1 image -+-hdc/-hdd file use 'file' as IDE hard disk 2/3 image -+-cdrom file use 'file' as IDE cdrom image (cdrom is ide1 master) -+-drive [file=file][,if=type][,bus=n][,unit=m][,media=d][,index=i] -+ [,cyls=c,heads=h,secs=s[,trans=t]][,snapshot=on|off] -+ [,cache=writethrough|writeback|none|directsync|unsafe][,format=f] -+ [,serial=s][,addr=A][,id=name][,aio=threads|native] -+ [,readonly=on|off] -+ use 'file' as a drive image -+-set group.id.arg=value -+ set parameter for item of type -+ i.e. -set drive.$id.file=/path/to/image -+-global driver.property=value -+ set a global default for a driver property -+-mtdblock file use 'file' as on-board Flash memory image -+-sd file use 'file' as SecureDigital card image -+-pflash file use 'file' as a parallel flash image -+-boot [order=drives][,once=drives][,menu=on|off] -+ [,splash=sp_name][,splash-time=sp_time] -+ 'drives': floppy (a), hard disk (c), CD-ROM (d), network (n) -+ 'sp_name': the file's name that would be passed to bios as logo picture, if menu=on -+ 'sp_time': the period that splash picture last if menu=on, unit is ms -+-snapshot write to temporary files instead of disk image files -+-m megs set virtual RAM size to megs MB [default=128] -+-mem-path FILE provide backing storage for guest RAM -+-mem-prealloc preallocate guest memory (use with -mem-path) -+-k language use keyboard layout (for example 'fr' for French) -+-audio-help print list of audio drivers and their options -+-soundhw c1,... enable audio support -+ and only specified sound cards (comma separated list) -+ use -soundhw ? to get the list of supported cards -+ use -soundhw all to enable all of them -+-usb enable the USB driver (will be the default soon) -+-usbdevice name add the host or guest USB device 'name' -+-device driver[,prop[=value][,...]] -+ add device (based on driver) -+ prop=value,... sets driver properties -+ use -device ? to print all possible drivers -+ use -device driver,? to print all possible properties -+ -+File system options: -+-fsdev fsdriver,id=id,path=path,[security_model={mapped|passthrough|none}] -+ [,writeout=immediate][,readonly] -+ -+Virtual File system pass-through options: -+-virtfs local,path=path,mount_tag=tag,security_model=[mapped|passthrough|none] -+ [,writeout=immediate][,readonly] -+-virtfs_synth Create synthetic file system image -+ -+-name string1[,process=string2] -+ set the name of the guest -+ string1 sets the window title and string2 the process name (on Linux) -+-uuid %08x-%04x-%04x-%04x-%012x -+ specify machine UUID -+ -+Display options: -+-display sdl[,frame=on|off][,alt_grab=on|off][,ctrl_grab=on|off] -+ [,window_close=on|off]|curses|none| -+ vnc=[,] -+ select display type -+-nographic disable graphical output and redirect serial I/Os to console -+-curses use a curses/ncurses interface instead of SDL -+-no-frame open SDL window without a frame and window decorations -+-alt-grab use Ctrl-Alt-Shift to grab mouse (instead of Ctrl-Alt) -+-ctrl-grab use Right-Ctrl to grab mouse (instead of Ctrl-Alt) -+-no-quit disable SDL window close capability -+-sdl enable SDL -+-spice enable spice -+-portrait rotate graphical output 90 deg left (only PXA LCD) -+-rotate rotate graphical output some deg left (only PXA LCD) -+-vga [std|cirrus|vmware|qxl|xenfb|none] -+ select video card type -+-full-screen start in full screen -+-g WxH[xDEPTH] Set the initial graphical resolution and depth -+-vnc display start a VNC server on display -+ -+i386 target only: -+-win2k-hack use it when installing Windows 2000 to avoid a disk full bug -+-no-fd-bootchk disable boot signature checking for floppy disks -+-no-acpi disable ACPI -+-no-hpet disable HPET -+-balloon none disable balloon device -+-balloon virtio[,addr=str] -+ enable virtio balloon device (default) -+-acpitable [sig=str][,rev=n][,oem_id=str][,oem_table_id=str][,oem_rev=n][,asl_compiler_id=str][,asl_compiler_rev=n][,{data|file}=file1[:file2]...] -+ ACPI table description -+-smbios file=binary -+ load SMBIOS entry from binary file -+-smbios type=0[,vendor=str][,version=str][,date=str][,release=%d.%d] -+ specify SMBIOS type 0 fields -+-smbios type=1[,manufacturer=str][,product=str][,version=str][,serial=str] -+ [,uuid=uuid][,sku=str][,family=str] -+ specify SMBIOS type 1 fields -+ -+Network options: -+-net nic[,vlan=n][,macaddr=mac][,model=type][,name=str][,addr=str][,vectors=v] -+ create a new Network Interface Card and connect it to VLAN 'n' -+-net user[,vlan=n][,name=str][,net=addr[/mask]][,host=addr][,restrict=on|off] -+ [,hostname=host][,dhcpstart=addr][,dns=addr][,tftp=dir][,bootfile=f] -+ [,hostfwd=rule][,guestfwd=rule][,smb=dir[,smbserver=addr]] -+ connect the user mode network stack to VLAN 'n', configure its -+ DHCP server and enabled optional services -+-net tap[,vlan=n][,name=str][,fd=h][,ifname=name][,script=file][,downscript=dfile][,sndbuf=nbytes][,vnet_hdr=on|off][,vhost=on|off][,vhostfd=h][,vhostforce=on|off] -+ connect the host TAP network interface to VLAN 'n' and use the -+ network scripts 'file' (default=/etc/qemu-ifup) -+ and 'dfile' (default=/etc/qemu-ifdown) -+ use '[down]script=no' to disable script execution -+ use 'fd=h' to connect to an already opened TAP interface -+ use 'sndbuf=nbytes' to limit the size of the send buffer (the -+ default is disabled 'sndbuf=0' to enable flow control set 'sndbuf=1048576') -+ use vnet_hdr=off to avoid enabling the IFF_VNET_HDR tap flag -+ use vnet_hdr=on to make the lack of IFF_VNET_HDR support an error condition -+ use vhost=on to enable experimental in kernel accelerator -+ (only has effect for virtio guests which use MSIX) -+ use vhostforce=on to force vhost on for non-MSIX virtio guests -+ use 'vhostfd=h' to connect to an already opened vhost net device -+-net socket[,vlan=n][,name=str][,fd=h][,listen=[host]:port][,connect=host:port] -+ connect the vlan 'n' to another VLAN using a socket connection -+-net socket[,vlan=n][,name=str][,fd=h][,mcast=maddr:port[,localaddr=addr]] -+ connect the vlan 'n' to multicast maddr and port -+ use 'localaddr=addr' to specify the host address to send packets from -+-net dump[,vlan=n][,file=f][,len=n] -+ dump traffic on vlan 'n' to file 'f' (max n bytes per packet) -+-net none use it alone to have zero network devices. If no -net option -+ is provided, the default is '-net nic -net user' -+-netdev [user|tap|socket],id=str[,option][,option][,...] -+ -+Character device options: -+-chardev null,id=id[,mux=on|off] -+-chardev socket,id=id[,host=host],port=host[,to=to][,ipv4][,ipv6][,nodelay] -+ [,server][,nowait][,telnet][,mux=on|off] (tcp) -+-chardev socket,id=id,path=path[,server][,nowait][,telnet],[mux=on|off] (unix) -+-chardev udp,id=id[,host=host],port=port[,localaddr=localaddr] -+ [,localport=localport][,ipv4][,ipv6][,mux=on|off] -+-chardev msmouse,id=id[,mux=on|off] -+-chardev vc,id=id[[,width=width][,height=height]][[,cols=cols][,rows=rows]] -+ [,mux=on|off] -+-chardev file,id=id,path=path[,mux=on|off] -+-chardev pipe,id=id,path=path[,mux=on|off] -+-chardev pty,id=id[,mux=on|off] -+-chardev stdio,id=id[,mux=on|off][,signal=on|off] -+-chardev tty,id=id,path=path[,mux=on|off] -+-chardev parport,id=id,path=path[,mux=on|off] -+-chardev spicevmc,id=id,name=name[,debug=debug] -+ -+Bluetooth(R) options: -+-bt hci,null dumb bluetooth HCI - doesn't respond to commands -+-bt hci,host[:id] -+ use host's HCI with the given name -+-bt hci[,vlan=n] -+ emulate a standard HCI in virtual scatternet 'n' -+-bt vhci[,vlan=n] -+ add host computer to virtual scatternet 'n' using VHCI -+-bt device:dev[,vlan=n] -+ emulate a bluetooth device 'dev' in scatternet 'n' -+ -+Linux/Multiboot boot specific: -+-kernel bzImage use 'bzImage' as kernel image -+-append cmdline use 'cmdline' as kernel command line -+-initrd file use 'file' as initial ram disk -+ -+Debug/Expert options: -+-serial dev redirect the serial port to char device 'dev' -+-parallel dev redirect the parallel port to char device 'dev' -+-monitor dev redirect the monitor to char device 'dev' -+-qmp dev like -monitor but opens in 'control' mode -+-mon chardev=[name][,mode=readline|control][,default] -+-debugcon dev redirect the debug console to char device 'dev' -+-pidfile file write PID to 'file' -+-singlestep always run in singlestep mode -+-S freeze CPU at startup (use 'c' to start execution) -+-gdb dev wait for gdb connection on 'dev' -+-s shorthand for -gdb tcp::1234 -+-d item1,... output log to /tmp/qemu.log (use -d ? for a list of log items) -+-D logfile output log to logfile (instead of the default /tmp/qemu.log) -+-hdachs c,h,s[,t] -+ force hard disk 0 physical geometry and the optional BIOS -+ translation (t=none or lba) (usually qemu can guess them) -+-L path set the directory for the BIOS, VGA BIOS and keymaps -+-bios file set the filename for the BIOS -+-enable-kvm enable KVM full virtualization support -+-xen-domid id specify xen guest domain id -+-xen-create create domain using xen hypercalls, bypassing xend -+ warning: should not be used when xend is in use -+-xen-attach attach to existing xen domain -+ xend will use this when starting qemu -+-no-reboot exit instead of rebooting -+-no-shutdown stop before shutdown -+-loadvm [tag|id] -+ start right away with a saved state (loadvm in monitor) -+-daemonize daemonize QEMU after initializing -+-option-rom rom load a file, rom, into the option ROM space -+-clock force the use of the given methods for timer alarm. -+ To see what timers are available use -clock ? -+-rtc [base=utc|localtime|date][,clock=host|vm][,driftfix=none|slew] -+ set the RTC base and clock, enable drift fix for clock ticks (x86 only) -+-icount [N|auto] -+ enable virtual instruction counter with 2^N clock ticks per -+ instruction -+-watchdog i6300esb|ib700 -+ enable virtual hardware watchdog [default=none] -+-watchdog-action reset|shutdown|poweroff|pause|debug|none -+ action when watchdog fires [default=reset] -+-echr chr set terminal escape character instead of ctrl-a -+-virtioconsole c -+ set virtio console -+-show-cursor show cursor -+-tb-size n set TB size -+-incoming p prepare for incoming migration, listen on port p -+-nodefaults don't create default devices -+-chroot dir chroot to dir just before starting the VM -+-runas user change to user id user just before starting the VM -+-prom-env variable=value -+ set OpenBIOS nvram variables -+-semihosting semihosting mode -+-old-param old param mode -+-readconfig -+-writeconfig -+ read/write config file -+-nodefconfig -+ do not load default config files at startup -+-trace [events=][,file=] -+ specify tracing options -+ -+During emulation, the following keys are useful: -+ctrl-alt-f toggle full screen -+ctrl-alt-n switch to virtual console 'n' -+ctrl-alt toggle mouse and keyboard grab -+ -+When using -nographic, press 'ctrl-a h' to get some help. -Index: libvirt-0.9.7/tests/qemuhelpdata/qemu-1.0-device -=================================================================== ---- /dev/null -+++ libvirt-0.9.7/tests/qemuhelpdata/qemu-1.0-device -@@ -0,0 +1,138 @@ -+name "AC97", bus PCI, desc "Intel 82801AA AC97 Audio" -+name "isa-applesmc", bus ISA -+name "ccid-card-emulated", bus ccid-bus, desc "emulated smartcard" -+name "ccid-card-passthru", bus ccid-bus, desc "passthrough smartcard" -+name "e1000", bus PCI, desc "Intel Gigabit Ethernet" -+name "i82801", bus PCI, desc "Intel i82801 Ethernet" -+name "i82562", bus PCI, desc "Intel i82562 Ethernet" -+name "i82559er", bus PCI, desc "Intel i82559ER Ethernet" -+name "i82559c", bus PCI, desc "Intel i82559C Ethernet" -+name "i82559b", bus PCI, desc "Intel i82559B Ethernet" -+name "i82559a", bus PCI, desc "Intel i82559A Ethernet" -+name "i82558b", bus PCI, desc "Intel i82558B Ethernet" -+name "i82558a", bus PCI, desc "Intel i82558A Ethernet" -+name "i82557c", bus PCI, desc "Intel i82557C Ethernet" -+name "i82557b", bus PCI, desc "Intel i82557B Ethernet" -+name "i82557a", bus PCI, desc "Intel i82557A Ethernet" -+name "i82551", bus PCI, desc "Intel i82551 Ethernet" -+name "i82550", bus PCI, desc "Intel i82550 Ethernet" -+name "ES1370", bus PCI, desc "ENSONIQ AudioPCI ES1370" -+name "SUNW,fdtwo", bus System -+name "sysbus-fdc", bus System -+name "hda-duplex", bus HDA, desc "HDA Audio Codec, duplex" -+name "hda-output", bus HDA, desc "HDA Audio Codec, output-only" -+name "ich9-ahci", bus PCI, alias "ahci" -+name "isa-ide", bus ISA -+name "ide-drive", bus IDE, desc "virtual IDE disk or CD-ROM (legacy)" -+name "ide-cd", bus IDE, desc "virtual IDE CD-ROM" -+name "ide-hd", bus IDE, desc "virtual IDE disk" -+name "intel-hda", bus PCI, desc "Intel HD Audio Controller" -+name "ioh3420", bus PCI, desc "Intel IOH device id 3420 PCIE Root Port" -+name "lsi53c895a", bus PCI, alias "lsi" -+name "ne2k_isa", bus ISA -+name "ne2k_pci", bus PCI -+name "isa-parallel", bus ISA -+name "pcnet", bus PCI -+name "rtl8139", bus PCI -+name "sb16", bus ISA, desc "Creative Sound Blaster 16" -+name "isa-serial", bus ISA -+name "usb-ccid", bus USB, desc "CCID Rev 1.1 smartcard reader" -+name "ich9-usb-ehci1", bus PCI -+name "usb-ehci", bus PCI -+name "sysbus-ohci", bus System, desc "OHCI USB Controller" -+name "pci-ohci", bus PCI, desc "Apple USB Controller" -+name "ich9-usb-uhci3", bus PCI -+name "ich9-usb-uhci2", bus PCI -+name "ich9-usb-uhci1", bus PCI -+name "vt82c686b-usb-uhci", bus PCI -+name "piix4-usb-uhci", bus PCI -+name "piix3-usb-uhci", bus PCI -+name "isa-vga", bus ISA -+name "VGA", bus PCI -+name "virtconsole", bus virtio-serial-bus -+name "virtserialport", bus virtio-serial-bus -+name "virtio-balloon-pci", bus PCI, alias "virtio-balloon" -+name "virtio-serial-pci", bus PCI, alias "virtio-serial" -+name "virtio-net-pci", bus PCI, alias "virtio-net" -+name "virtio-blk-pci", bus PCI, alias "virtio-blk" -+name "vmware-svga", bus PCI -+name "i6300esb", bus PCI -+name "xio3130-downstream", bus PCI, desc "TI X3130 Downstream Port of PCI Express Switch" -+name "x3130-upstream", bus PCI, desc "TI X3130 Upstream Port of PCI Express Switch" -+name "scsi-disk", bus SCSI, desc "virtual SCSI disk or CD-ROM (legacy)" -+name "scsi-block", bus SCSI, desc "SCSI block device passthrough" -+name "scsi-cd", bus SCSI, desc "virtual SCSI CD-ROM" -+name "scsi-hd", bus SCSI, desc "virtual SCSI disk" -+name "scsi-generic", bus SCSI, desc "pass through generic scsi device (/dev/sg*)" -+name "smbus-eeprom", bus I2C -+name "usb-bt-dongle", bus USB -+name "usb-kbd", bus USB -+name "usb-mouse", bus USB -+name "usb-tablet", bus USB -+name "usb-hub", bus USB -+name "usb-host", bus USB -+name "usb-storage", bus USB -+name "usb-net", bus USB -+name "usb-braille", bus USB -+name "usb-serial", bus USB -+name "usb-wacom-tablet", bus USB, desc "QEMU PenPartner Tablet" -+name "virtio-9p-pci", bus PCI -+name "cirrus-vga", bus PCI, desc "Cirrus CLGD 54xx VGA" -+name "isa-debugcon", bus ISA -+name "ivshmem", bus PCI -+name "qxl", bus PCI, desc "Spice QXL GPU (secondary)" -+name "qxl-vga", bus PCI, desc "Spice QXL GPU (primary, vga compatible)" -+name "sga", bus ISA, desc "Serial Graphics Adapter" -+name "ib700", bus ISA -+virtio-blk-pci.class=hex32 -+virtio-blk-pci.drive=drive -+virtio-blk-pci.logical_block_size=uint16 -+virtio-blk-pci.physical_block_size=uint16 -+virtio-blk-pci.min_io_size=uint16 -+virtio-blk-pci.opt_io_size=uint32 -+virtio-blk-pci.bootindex=int32 -+virtio-blk-pci.discard_granularity=uint32 -+virtio-blk-pci.serial=string -+virtio-blk-pci.ioeventfd=on/off -+virtio-blk-pci.vectors=uint32 -+virtio-blk-pci.indirect_desc=on/off -+virtio-blk-pci.event_idx=on/off -+virtio-blk-pci.scsi=on/off -+virtio-blk-pci.addr=pci-devfn -+virtio-blk-pci.romfile=string -+virtio-blk-pci.rombar=uint32 -+virtio-blk-pci.multifunction=on/off -+virtio-blk-pci.command_serr_enable=on/off -+virtio-net-pci.ioeventfd=on/off -+virtio-net-pci.vectors=uint32 -+virtio-net-pci.indirect_desc=on/off -+virtio-net-pci.event_idx=on/off -+virtio-net-pci.csum=on/off -+virtio-net-pci.guest_csum=on/off -+virtio-net-pci.gso=on/off -+virtio-net-pci.guest_tso4=on/off -+virtio-net-pci.guest_tso6=on/off -+virtio-net-pci.guest_ecn=on/off -+virtio-net-pci.guest_ufo=on/off -+virtio-net-pci.host_tso4=on/off -+virtio-net-pci.host_tso6=on/off -+virtio-net-pci.host_ecn=on/off -+virtio-net-pci.host_ufo=on/off -+virtio-net-pci.mrg_rxbuf=on/off -+virtio-net-pci.status=on/off -+virtio-net-pci.ctrl_vq=on/off -+virtio-net-pci.ctrl_rx=on/off -+virtio-net-pci.ctrl_vlan=on/off -+virtio-net-pci.ctrl_rx_extra=on/off -+virtio-net-pci.mac=macaddr -+virtio-net-pci.vlan=vlan -+virtio-net-pci.netdev=netdev -+virtio-net-pci.bootindex=int32 -+virtio-net-pci.x-txtimer=uint32 -+virtio-net-pci.x-txburst=int32 -+virtio-net-pci.tx=string -+virtio-net-pci.addr=pci-devfn -+virtio-net-pci.romfile=string -+virtio-net-pci.rombar=uint32 -+virtio-net-pci.multifunction=on/off -+virtio-net-pci.command_serr_enable=on/off -Index: libvirt-0.9.7/tests/qemuhelptest.c -=================================================================== ---- libvirt-0.9.7.orig/tests/qemuhelptest.c -+++ libvirt-0.9.7/tests/qemuhelptest.c -@@ -571,6 +571,68 @@ mymain(void) - QEMU_CAPS_USB_HUB, - QEMU_CAPS_NO_SHUTDOWN, - QEMU_CAPS_PCI_ROMBAR); -+ DO_TEST("qemu-1.0", 1000000, 0, 0, -+ QEMU_CAPS_VNC_COLON, -+ QEMU_CAPS_NO_REBOOT, -+ QEMU_CAPS_DRIVE, -+ QEMU_CAPS_NAME, -+ QEMU_CAPS_UUID, -+ QEMU_CAPS_MIGRATE_QEMU_TCP, -+ QEMU_CAPS_MIGRATE_QEMU_EXEC, -+ QEMU_CAPS_DRIVE_CACHE_V2, -+ QEMU_CAPS_DRIVE_CACHE_UNSAFE, -+ QEMU_CAPS_DRIVE_FORMAT, -+ QEMU_CAPS_DRIVE_SERIAL, -+ QEMU_CAPS_XEN_DOMID, -+ QEMU_CAPS_DRIVE_READONLY, -+ QEMU_CAPS_VGA, -+ QEMU_CAPS_0_10, -+ QEMU_CAPS_MEM_PATH, -+ QEMU_CAPS_SDL, -+ QEMU_CAPS_MIGRATE_QEMU_UNIX, -+ QEMU_CAPS_CHARDEV, -+ QEMU_CAPS_ENABLE_KVM, -+ QEMU_CAPS_MONITOR_JSON, -+ QEMU_CAPS_BALLOON, -+ QEMU_CAPS_DEVICE, -+ QEMU_CAPS_SMP_TOPOLOGY, -+ QEMU_CAPS_NETDEV, -+ QEMU_CAPS_RTC, -+ QEMU_CAPS_VHOST_NET, -+ QEMU_CAPS_NO_HPET, -+ QEMU_CAPS_NODEFCONFIG, -+ QEMU_CAPS_BOOT_MENU, -+ QEMU_CAPS_FSDEV, -+ QEMU_CAPS_NAME_PROCESS, -+ QEMU_CAPS_SMBIOS_TYPE, -+ QEMU_CAPS_VGA_QXL, -+ QEMU_CAPS_SPICE, -+ QEMU_CAPS_VGA_NONE, -+ QEMU_CAPS_MIGRATE_QEMU_FD, -+ QEMU_CAPS_BOOTINDEX, -+ QEMU_CAPS_HDA_DUPLEX, -+ QEMU_CAPS_DRIVE_AIO, -+ QEMU_CAPS_CCID_EMULATED, -+ QEMU_CAPS_CCID_PASSTHRU, -+ QEMU_CAPS_CHARDEV_SPICEVMC, -+ QEMU_CAPS_VIRTIO_TX_ALG, -+ QEMU_CAPS_DEVICE_QXL_VGA, -+ QEMU_CAPS_PCI_MULTIFUNCTION, -+ QEMU_CAPS_VIRTIO_IOEVENTFD, -+ QEMU_CAPS_SGA, -+ QEMU_CAPS_VIRTIO_BLK_EVENT_IDX, -+ QEMU_CAPS_VIRTIO_NET_EVENT_IDX, -+ QEMU_CAPS_DRIVE_CACHE_DIRECTSYNC, -+ QEMU_CAPS_PIIX3_USB_UHCI, -+ QEMU_CAPS_PIIX4_USB_UHCI, -+ QEMU_CAPS_USB_EHCI, -+ QEMU_CAPS_ICH9_USB_EHCI1, -+ QEMU_CAPS_VT82C686B_USB_UHCI, -+ QEMU_CAPS_PCI_OHCI, -+ QEMU_CAPS_USB_HUB, -+ QEMU_CAPS_NO_SHUTDOWN, -+ QEMU_CAPS_PCI_ROMBAR, -+ QEMU_CAPS_ICH9_AHCI); - - return ret == 0 ? EXIT_SUCCESS : EXIT_FAILURE; - } diff --git a/install-apparmor-profiles.patch b/install-apparmor-profiles.patch index 6b2946e..4e39d86 100644 --- a/install-apparmor-profiles.patch +++ b/install-apparmor-profiles.patch @@ -1,7 +1,7 @@ -Index: libvirt-0.9.7/examples/apparmor/Makefile.am +Index: libvirt-0.9.8/examples/apparmor/Makefile.am =================================================================== ---- libvirt-0.9.7.orig/examples/apparmor/Makefile.am -+++ libvirt-0.9.7/examples/apparmor/Makefile.am +--- libvirt-0.9.8.orig/examples/apparmor/Makefile.am ++++ libvirt-0.9.8/examples/apparmor/Makefile.am @@ -1,8 +1,39 @@ ## Copyright (C) 2005-2011 Red Hat, Inc. ## See COPYING.LIB for the License of this software @@ -47,10 +47,10 @@ Index: libvirt-0.9.7/examples/apparmor/Makefile.am + rm -f $(DESTDIR)$(sysconfdir)/apparmor.d/libvirt/TEMPLATE + +endif -Index: libvirt-0.9.7/examples/apparmor/usr.lib.libvirt.virt-aa-helper.in +Index: libvirt-0.9.8/examples/apparmor/usr.lib.libvirt.virt-aa-helper.in =================================================================== --- /dev/null -+++ libvirt-0.9.7/examples/apparmor/usr.lib.libvirt.virt-aa-helper.in ++++ libvirt-0.9.8/examples/apparmor/usr.lib.libvirt.virt-aa-helper.in @@ -0,0 +1,40 @@ +# Last Modified: Fri Aug 19 11:21:48 2011 +#include @@ -92,9 +92,9 @@ Index: libvirt-0.9.7/examples/apparmor/usr.lib.libvirt.virt-aa-helper.in + /var/lib/kvm/images/ r, + /var/lib/kvm/images/** r, +} -Index: libvirt-0.9.7/examples/apparmor/usr.lib.libvirt.virt-aa-helper +Index: libvirt-0.9.8/examples/apparmor/usr.lib.libvirt.virt-aa-helper =================================================================== ---- libvirt-0.9.7.orig/examples/apparmor/usr.lib.libvirt.virt-aa-helper +--- libvirt-0.9.8.orig/examples/apparmor/usr.lib.libvirt.virt-aa-helper +++ /dev/null @@ -1,38 +0,0 @@ -# Last Modified: Mon Apr 5 15:10:27 2010 @@ -135,9 +135,9 @@ Index: libvirt-0.9.7/examples/apparmor/usr.lib.libvirt.virt-aa-helper - /var/lib/libvirt/images/ r, - /var/lib/libvirt/images/** r, -} -Index: libvirt-0.9.7/examples/apparmor/usr.sbin.libvirtd +Index: libvirt-0.9.8/examples/apparmor/usr.sbin.libvirtd =================================================================== ---- libvirt-0.9.7.orig/examples/apparmor/usr.sbin.libvirtd +--- libvirt-0.9.8.orig/examples/apparmor/usr.sbin.libvirtd +++ /dev/null @@ -1,52 +0,0 @@ -# Last Modified: Mon Apr 5 15:03:58 2010 @@ -192,10 +192,10 @@ Index: libvirt-0.9.7/examples/apparmor/usr.sbin.libvirtd - change_profile -> @{LIBVIRT}-[0-9a-f]*-[0-9a-f]*-[0-9a-f]*-[0-9a-f]*-[0-9a-f]*, - -} -Index: libvirt-0.9.7/examples/apparmor/usr.sbin.libvirtd.in +Index: libvirt-0.9.8/examples/apparmor/usr.sbin.libvirtd.in =================================================================== --- /dev/null -+++ libvirt-0.9.7/examples/apparmor/usr.sbin.libvirtd.in ++++ libvirt-0.9.8/examples/apparmor/usr.sbin.libvirtd.in @@ -0,0 +1,54 @@ +# Last Modified: Fri Aug 19 11:20:36 2011 +#include @@ -251,10 +251,10 @@ Index: libvirt-0.9.7/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-0.9.7/examples/apparmor/libvirt-qemu +Index: libvirt-0.9.8/examples/apparmor/libvirt-qemu =================================================================== ---- libvirt-0.9.7.orig/examples/apparmor/libvirt-qemu -+++ libvirt-0.9.7/examples/apparmor/libvirt-qemu +--- libvirt-0.9.8.orig/examples/apparmor/libvirt-qemu ++++ libvirt-0.9.8/examples/apparmor/libvirt-qemu @@ -52,6 +52,7 @@ # access to firmware's etc /usr/share/kvm/** r, diff --git a/libvirt-0.9.7.tar.bz2 b/libvirt-0.9.7.tar.bz2 deleted file mode 100644 index 0588b2b..0000000 --- a/libvirt-0.9.7.tar.bz2 +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:cc541b104a7378ecf00d140a1eb3b582e34eed28faed07ca5936caa98ecb82dd -size 12461024 diff --git a/libvirt-0.9.8.tar.bz2 b/libvirt-0.9.8.tar.bz2 new file mode 100644 index 0000000..63524d4 --- /dev/null +++ b/libvirt-0.9.8.tar.bz2 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4b1fdbfb9bf8831ca5b4c0a065a051243ecdab1ea8778de2c185f35e77b93629 +size 12881970 diff --git a/libvirt-suse-netcontrol.patch b/libvirt-suse-netcontrol.patch index 613f7fb..5452d2d 100644 --- a/libvirt-suse-netcontrol.patch +++ b/libvirt-suse-netcontrol.patch @@ -1,7 +1,7 @@ -Index: libvirt-0.9.7/configure.ac +Index: libvirt-0.9.8/configure.ac =================================================================== ---- libvirt-0.9.7.orig/configure.ac -+++ libvirt-0.9.7/configure.ac +--- libvirt-0.9.8.orig/configure.ac ++++ libvirt-0.9.8/configure.ac @@ -63,6 +63,7 @@ AVAHI_REQUIRED="0.6.0" POLKIT_REQUIRED="0.6" PARTED_REQUIRED="1.8.0" @@ -10,7 +10,7 @@ Index: libvirt-0.9.7/configure.ac UDEV_REQUIRED=145 PCIACCESS_REQUIRED=0.10.0 XMLRPC_REQUIRED=1.14.0 -@@ -1591,6 +1592,38 @@ AM_CONDITIONAL([WITH_NETCF], [test "$wit +@@ -1639,6 +1640,38 @@ AM_CONDITIONAL([WITH_NETCF], [test "$wit AC_SUBST([NETCF_CFLAGS]) AC_SUBST([NETCF_LIBS]) @@ -49,7 +49,7 @@ Index: libvirt-0.9.7/configure.ac AC_ARG_WITH([secrets], AC_HELP_STRING([--with-secrets], [with local secrets management driver @<:@default=yes@:>@]),[],[with_secrets=yes]) -@@ -2515,6 +2548,7 @@ AC_MSG_NOTICE([ Remote: $with_remote]) +@@ -2567,6 +2600,7 @@ AC_MSG_NOTICE([ Remote: $with_remote]) AC_MSG_NOTICE([ Network: $with_network]) AC_MSG_NOTICE([Libvirtd: $with_libvirtd]) AC_MSG_NOTICE([ netcf: $with_netcf]) @@ -57,7 +57,7 @@ Index: libvirt-0.9.7/configure.ac AC_MSG_NOTICE([ macvtap: $with_macvtap]) AC_MSG_NOTICE([virtport: $with_virtualport]) AC_MSG_NOTICE([]) -@@ -2646,6 +2680,11 @@ AC_MSG_NOTICE([ netcf: $NETCF_CFLAGS $ +@@ -2698,6 +2732,11 @@ AC_MSG_NOTICE([ netcf: $NETCF_CFLAGS $ else AC_MSG_NOTICE([ netcf: no]) fi @@ -69,10 +69,10 @@ Index: libvirt-0.9.7/configure.ac if test "$with_qemu" = "yes" && test "$LIBPCAP_FOUND" != "no"; then AC_MSG_NOTICE([ pcap: $LIBPCAP_CFLAGS $LIBPCAP_LIBS]) else -Index: libvirt-0.9.7/daemon/Makefile.am +Index: libvirt-0.9.8/daemon/Makefile.am =================================================================== ---- libvirt-0.9.7.orig/daemon/Makefile.am -+++ libvirt-0.9.7/daemon/Makefile.am +--- libvirt-0.9.8.orig/daemon/Makefile.am ++++ libvirt-0.9.8/daemon/Makefile.am @@ -143,6 +143,10 @@ endif if WITH_NETCF @@ -84,10 +84,10 @@ Index: libvirt-0.9.7/daemon/Makefile.am endif if WITH_NODE_DEVICES -Index: libvirt-0.9.7/daemon/libvirtd.c +Index: libvirt-0.9.8/daemon/libvirtd.c =================================================================== ---- libvirt-0.9.7.orig/daemon/libvirtd.c -+++ libvirt-0.9.7/daemon/libvirtd.c +--- libvirt-0.9.8.orig/daemon/libvirtd.c ++++ libvirt-0.9.8/daemon/libvirtd.c @@ -75,6 +75,10 @@ # endif # ifdef WITH_NETCF @@ -99,7 +99,7 @@ Index: libvirt-0.9.7/daemon/libvirtd.c # endif # ifdef WITH_STORAGE_DIR # include "storage/storage_driver.h" -@@ -389,6 +393,10 @@ static void daemonInitialize(void) +@@ -393,6 +397,10 @@ static void daemonInitialize(void) # endif # ifdef WITH_NETCF interfaceRegister(); @@ -110,11 +110,11 @@ Index: libvirt-0.9.7/daemon/libvirtd.c # endif # ifdef WITH_STORAGE_DIR storageRegister(); -Index: libvirt-0.9.7/src/Makefile.am +Index: libvirt-0.9.8/src/Makefile.am =================================================================== ---- libvirt-0.9.7.orig/src/Makefile.am -+++ libvirt-0.9.7/src/Makefile.am -@@ -941,6 +941,24 @@ libvirt_driver_interface_la_LIBADD += .. +--- libvirt-0.9.8.orig/src/Makefile.am ++++ libvirt-0.9.8/src/Makefile.am +@@ -950,6 +950,24 @@ libvirt_driver_interface_la_LIBADD += .. libvirt_driver_interface_la_LDFLAGS += -module -avoid-version endif libvirt_driver_interface_la_SOURCES = $(INTERFACE_DRIVER_SOURCES) @@ -139,10 +139,10 @@ Index: libvirt-0.9.7/src/Makefile.am endif if WITH_SECRETS -Index: libvirt-0.9.7/src/interface/netcf_driver.c +Index: libvirt-0.9.8/src/interface/netcf_driver.c =================================================================== ---- libvirt-0.9.7.orig/src/interface/netcf_driver.c -+++ libvirt-0.9.7/src/interface/netcf_driver.c +--- libvirt-0.9.8.orig/src/interface/netcf_driver.c ++++ libvirt-0.9.8/src/interface/netcf_driver.c @@ -23,7 +23,13 @@ #include @@ -208,11 +208,11 @@ Index: libvirt-0.9.7/src/interface/netcf_driver.c /* open netcf */ if (ncf_init(&driverState->netcf, NULL) != 0) { -Index: libvirt-0.9.7/tools/virsh.c +Index: libvirt-0.9.8/tools/virsh.c =================================================================== ---- libvirt-0.9.7.orig/tools/virsh.c -+++ libvirt-0.9.7/tools/virsh.c -@@ -16506,6 +16506,10 @@ vshShowVersion(vshControl *ctl ATTRIBUTE +--- libvirt-0.9.8.orig/tools/virsh.c ++++ libvirt-0.9.8/tools/virsh.c +@@ -17646,6 +17646,10 @@ vshShowVersion(vshControl *ctl ATTRIBUTE #endif #ifdef WITH_NETCF vshPrint(ctl, " Netcf"); diff --git a/libvirt.changes b/libvirt.changes index 465efda..a426319 100644 --- a/libvirt.changes +++ b/libvirt.changes @@ -1,3 +1,25 @@ +------------------------------------------------------------------- +Wed Dec 14 18:13:11 MST 2011 - jfehlig@suse.com + +- CVE-2011-4600: unintended firewall port exposure after restarting + libvirtd when defining a bridged forward-mode network + ae1232b2-CVE-2011-4600.patch + bnc#736082 + +- Post-0.9.8 upstream systemd patches + 10404671-systemd-build-fix.patch 478a4d07-systemd-build-fix.patch + +- Update to libvirt 0.9.8 + - Add support for QEMU 1.0 + - Add first parts of PPC cpu driver + - Add new API virDomain{Set, Get}BlockIoTune + - block_resize: Define the new API + - Add a public API to invoke suspend/resume on the host + - Various improvements for LXC containers + - Define keepalive protocol and add virConnectIsAlive API + - Add support for STP and VLANfiltering + - Numerous bug fixes and improvements + ------------------------------------------------------------------- Tue Dec 13 21:37:19 MST 2011 - jfehlig@suse.com diff --git a/libvirt.spec b/libvirt.spec index 947f9cb..769b97a 100644 --- a/libvirt.spec +++ b/libvirt.spec @@ -78,7 +78,8 @@ %define with_audit 0%{!?_without_audit:0} %define with_dtrace 0%{!?_without_dtrace:0} %define with_cgconfig 0%{!?_without_cgconfig:0} - +%define with_sanlock 0%{!?_without_sanlock:0} +%define with_systemd 0%{!?_without_systemd:0} # Non-server/HV driver defaults which are always enabled %define with_python 0%{!?_without_python:1} %define with_sasl 0%{!?_without_sasl:1} @@ -306,13 +307,19 @@ BuildRequires: audit-devel # we need /usr/sbin/dtrace BuildRequires: systemtap-sdt-devel %endif +%if %{with_sanlock} +BuildRequires: sanlock-devel >= 1.8 +%endif +%if %{with_systemd} +BuildRequires: systemd-units +%endif Name: libvirt Url: http://libvirt.org/ License: LGPL-2.1+ Group: Development/Libraries/C and C++ AutoReqProv: yes -Version: 0.9.7 +Version: 0.9.8 Release: 1 Summary: A C toolkit to interact with the virtualization capabilities of Linux Conflicts: kvm < 0.14.1 @@ -374,20 +381,30 @@ Recommends: device-mapper # For multipath support Recommends: device-mapper %endif +# For virConnectGetSysinfo +Requires: dmidecode +# For service management +%if %{with_systemd} +Requires(post): systemd-units +Requires(post): systemd-sysv +Requires(preun): systemd-units +Requires(postun): systemd-units +%endif Source0: %{name}-%{version}.tar.bz2 Source1: libvirtd.init Source2: libvirtd-relocation-server.fw Source99: baselibs.conf # Upstream patches -Patch0: d47ab3fe-polkit0.patch -Patch1: a495365d-sexpr-empty-str.patch -Patch2: dd8e8956-qemu-1.0.patch +Patch0: ae1232b2-CVE-2011-4600.patch +Patch1: 478a4d07-systemd-build-fix.patch +Patch2: 10404671-systemd-build-fix.patch # Need to go upstream Patch100: xen-name-for-devid.patch Patch101: clone.patch Patch102: xen-pv-cdrom.patch Patch103: xen-domctl-ver8.patch +Patch104: AF_PACKET.patch # Our patches Patch200: libvirtd-defaults.patch Patch201: use-init-script-redhat.patch @@ -483,6 +500,21 @@ Authors: Daniel Veillard Karel Zak +%if %{with_sanlock} + +%package lock-sanlock +License: LGPL-2.1+ +Summary: Sanlock lock manager plugin for QEMU driver +Group: Development/Libraries/C and C++ +Requires: sanlock >= 1.8 +#for virt-sanlock-cleanup require augeas +Requires: augeas +Requires: %{name} = %{version}-%{release} + +%description lock-sanlock +Includes the Sanlock lock manager plugin for the QEMU driver +%endif + %if %{with_python} %package python @@ -514,6 +546,7 @@ Authors: %patch101 %patch102 -p1 %patch103 -p1 +%patch104 -p1 %patch200 -p1 %patch201 -p1 %patch202 -p1 @@ -631,6 +664,17 @@ Authors: %if ! %{with_libpcap} %define _without_libpcap --without-libpcap %endif +%if ! %{with_sanlock} +%define _without_sanlock --without-sanlock +%endif +%if %{with_systemd} +# Use 'systemd+redhat' (see patch use-init-script-redhat.patch), +# so if someone installs upstart or legacy init scripts, they can +# still start libvirtd +%define init_scripts --with-init_script=systemd+redhat +%else +%define init_scripts --with-init_script=redhat +%endif autoreconf -f -i export CFLAGS="$RPM_OPT_FLAGS" @@ -670,17 +714,18 @@ export CFLAGS="$RPM_OPT_FLAGS" %{?_without_sasl} \ %{?_without_python} \ %{?_without_libpcap} \ + %{?_without_sanlock} \ --libexecdir=%{_libdir}/%{name} \ --with-qemu-user=%{qemu_user} \ --with-qemu-group=%{qemu_group} \ - --with-init-script=redhat \ + %{init_scripts} \ ac_cv_path_MODPROBE=/sbin/modprobe \ ac_cv_path_UDEVADM=/sbin/udevadm \ ac_cv_path_SHOWMOUNT=/usr/sbin/showmount -make %{?jobs:-j%jobs} DOCS_DIR=%{_docdir}/%{name}-python EXAMPLE_DIR=%{_docdir}/%{name}-python/examples HTML_DIR=%{_docdir}/%{name} +make V=1 %{?jobs:-j%jobs} DOCS_DIR=%{_docdir}/%{name}-python EXAMPLE_DIR=%{_docdir}/%{name}-python/examples HTML_DIR=%{_docdir}/%{name} %install -%makeinstall DOCS_DIR=%{_docdir}/%{name}-python EXAMPLE_DIR=%{_docdir}/%{name}-python/examples HTML_DIR=%{_docdir}/%{name} +%makeinstall SYSTEMD_UNIT_DIR=%{buildroot}%{_unitdir} DOCS_DIR=%{_docdir}/%{name}-python EXAMPLE_DIR=%{_docdir}/%{name}-python/examples HTML_DIR=%{_docdir}/%{name} cp -a AUTHORS ChangeLog COPYING NEWS README TODO $RPM_BUILD_ROOT%{_docdir}/%{name}/ cd docs ; cp -a *.html $RPM_BUILD_ROOT%{_docdir}/%{name} ; cp -a *.png $RPM_BUILD_ROOT%{_docdir}/%{name} ; cd .. # remove currently unsupported locale(s) @@ -764,7 +809,7 @@ rm -rf $RPM_BUILD_ROOT %if %{with_libvirtd} %if %{with_network} # Install the default network if one doesn't exist -if test ! -f %{_sysconfdir}/libvirt/qemu/networks/default.xml +if ! /sbin/chkconfig libvirtd && test ! -f %{_sysconfdir}/libvirt/qemu/networks/default.xml then UUID=`/usr/bin/uuidgen` sed -e "s,,\n $UUID," \ @@ -772,24 +817,65 @@ then > %{_sysconfdir}/libvirt/qemu/networks/default.xml fi %endif + %if 0%{?sles_version} +%if %{with_systemd} +if [ $1 -eq 1 ] ; then + # Initial installation + /bin/systemctl enable libvirtd.service >/dev/null 2>&1 || : +fi +%else # !systemd %{fillup_and_insserv -y libvirtd} +%endif +%else # ! sles +%if %{with_systemd} %else %{fillup_only -n libvirtd} %endif %endif +%endif + +%if %{with_systemd} +%else %{fillup_only -n libvirt-guests} +%endif %preun %if %{with_libvirtd} +%if %{with_systemd} +if [ $1 -eq 0 ] ; then + # Package removal, not upgrade + /bin/systemctl --no-reload disable libvirtd.service > /dev/null 2>&1 || : + /bin/systemctl stop libvirtd.service > /dev/null 2>&1 || : +fi +%else %stop_on_removal libvirtd %endif +%endif %postun /sbin/ldconfig %if %{with_libvirtd} +%if %{with_systemd} +/bin/systemctl daemon-reload >/dev/null 2>&1 || : +if [ $1 -ge 1 ] ; then + # Package upgrade, not uninstall + /bin/systemctl try-restart libvirtd.service >/dev/null 2>&1 || : +fi + +%triggerun -- libvirt < 0.9.4 +%{_bindir}/systemd-sysv-convert --save libvirtd >/dev/null 2>&1 ||: + +# If the package is allowed to autostart: +/bin/systemctl --no-reload enable libvirtd.service >/dev/null 2>&1 ||: + +# Run these because the SysV package being removed won't do them +/sbin/chkconfig --del libvirtd >/dev/null 2>&1 || : +/bin/systemctl try-restart libvirtd.service >/dev/null 2>&1 || : +%else %restart_on_update libvirtd %endif +%endif %insserv_cleanup %post client -p /sbin/ldconfig @@ -817,6 +903,9 @@ fi %{_localstatedir}/adm/fillup-templates/sysconfig.libvirtd %config /etc/init.d/libvirtd %{_sbindir}/rclibvirtd +%if %{with_systemd} +%{_unitdir}/libvirtd.service +%endif %config(noreplace) %{_sysconfdir}/libvirt/libvirtd.conf %config(noreplace) %{_sysconfdir}/logrotate.d/libvirtd %if %{with_dtrace} @@ -864,7 +953,6 @@ fi %endif %attr(0755, root, root) %{_libdir}/%{name}/libvirt_iohelper %doc %{_mandir}/man8/libvirtd.8* -%endif %if %{with_apparmor} %dir %{_sysconfdir}/apparmor.d %dir %{_sysconfdir}/apparmor.d/abstractions @@ -876,6 +964,7 @@ fi %{_libdir}/%{name}/virt-aa-helper %endif %config %{_fwdefdir}/libvirtd-relocation-server +%endif # with_libvirtd %files client -f %{name}.lang %defattr(-, root, root) @@ -894,6 +983,9 @@ fi %{_localstatedir}/adm/fillup-templates/sysconfig.libvirt-guests %config /etc/init.d/libvirt-guests %{_sbindir}/rclibvirt-guests +%if %{with_systemd} +%{_unitdir}/libvirt-guests.service +%endif %dir %{_datadir}/libvirt/ %dir %{_datadir}/libvirt/schemas/ @@ -932,6 +1024,21 @@ fi %doc %{_docdir}/%{name}/*.css %doc %{_docdir}/%{name}/html +%if %{with_sanlock} + +%files lock-sanlock +%defattr(-, root, root) +%if %{with_qemu} +%config(noreplace) %{_sysconfdir}/libvirt/qemu-sanlock.conf +%endif +%attr(0755, root, root) %{_libdir}/libvirt/lock-driver/sanlock.so +%{_datadir}/augeas/lenses/libvirt_sanlock.aug +%{_datadir}/augeas/lenses/tests/test_libvirt_sanlock.aug +%dir %attr(0700, root, root) %{_localstatedir}/lib/libvirt/sanlock +%{_sbindir}/virt-sanlock-cleanup +%{_mandir}/man8/virt-sanlock-cleanup.8* +%endif + %if %{with_python} %files python diff --git a/libvirtd-defaults.patch b/libvirtd-defaults.patch index d0e5f16..9775190 100644 --- a/libvirtd-defaults.patch +++ b/libvirtd-defaults.patch @@ -1,7 +1,7 @@ -Index: libvirt-0.9.7/daemon/libvirtd.conf +Index: libvirt-0.9.8/daemon/libvirtd.conf =================================================================== ---- libvirt-0.9.7.orig/daemon/libvirtd.conf -+++ libvirt-0.9.7/daemon/libvirtd.conf +--- libvirt-0.9.8.orig/daemon/libvirtd.conf ++++ libvirt-0.9.8/daemon/libvirtd.conf @@ -18,8 +18,8 @@ # It is necessary to setup a CA and issue server certificates before # using this capability. @@ -28,11 +28,11 @@ Index: libvirt-0.9.7/daemon/libvirtd.conf # Override the default mDNS advertizement name. This must be # unique on the immediate broadcast network. -Index: libvirt-0.9.7/daemon/libvirtd.c +Index: libvirt-0.9.8/daemon/libvirtd.c =================================================================== ---- libvirt-0.9.7.orig/daemon/libvirtd.c -+++ libvirt-0.9.7/daemon/libvirtd.c -@@ -846,7 +846,7 @@ daemonConfigNew(bool privileged ATTRIBUT +--- libvirt-0.9.8.orig/daemon/libvirtd.c ++++ libvirt-0.9.8/daemon/libvirtd.c +@@ -850,7 +850,7 @@ daemonConfigNew(bool privileged ATTRIBUT return NULL; } @@ -41,7 +41,7 @@ Index: libvirt-0.9.7/daemon/libvirtd.c data->listen_tcp = 0; if (!(data->tls_port = strdup(LIBVIRTD_TLS_PORT))) -@@ -883,7 +883,7 @@ daemonConfigNew(bool privileged ATTRIBUT +@@ -887,7 +887,7 @@ daemonConfigNew(bool privileged ATTRIBUT #endif data->auth_tls = REMOTE_AUTH_NONE; diff --git a/relax-qemu-usergroup-check.patch b/relax-qemu-usergroup-check.patch index c6b9450..46272ae 100644 --- a/relax-qemu-usergroup-check.patch +++ b/relax-qemu-usergroup-check.patch @@ -7,10 +7,10 @@ drivers as loadable modules instead of built-in to the daemon. Then the qemu driver would only be loaded when needed, which would never be the case on a xen-only configuration. -Index: libvirt-0.9.7/src/qemu/qemu_conf.c +Index: libvirt-0.9.8/src/qemu/qemu_conf.c =================================================================== ---- libvirt-0.9.7.orig/src/qemu/qemu_conf.c -+++ libvirt-0.9.7/src/qemu/qemu_conf.c +--- libvirt-0.9.8.orig/src/qemu/qemu_conf.c ++++ libvirt-0.9.8/src/qemu/qemu_conf.c @@ -255,9 +255,7 @@ int qemudLoadDriverConfig(struct qemud_d return -1; } diff --git a/suse-qemu-conf.patch b/suse-qemu-conf.patch index e3205cd..6e74be9 100644 --- a/suse-qemu-conf.patch +++ b/suse-qemu-conf.patch @@ -1,7 +1,7 @@ -Index: libvirt-0.9.7/src/qemu/qemu.conf +Index: libvirt-0.9.8/src/qemu/qemu.conf =================================================================== ---- libvirt-0.9.7.orig/src/qemu/qemu.conf -+++ libvirt-0.9.7/src/qemu/qemu.conf +--- libvirt-0.9.8.orig/src/qemu/qemu.conf ++++ libvirt-0.9.8/src/qemu/qemu.conf @@ -136,7 +136,16 @@ # leaving SELinux enabled for the host in general, then set this # to 'none' instead. diff --git a/use-init-script-redhat.patch b/use-init-script-redhat.patch index 04ae33c..ebb1f68 100644 --- a/use-init-script-redhat.patch +++ b/use-init-script-redhat.patch @@ -1,35 +1,42 @@ -Index: libvirt-0.9.7/tools/Makefile.am +Index: libvirt-0.9.8/tools/Makefile.am =================================================================== ---- libvirt-0.9.7.orig/tools/Makefile.am -+++ libvirt-0.9.7/tools/Makefile.am -@@ -155,16 +155,17 @@ uninstall-local: uninstall-init +--- libvirt-0.9.8.orig/tools/Makefile.am ++++ libvirt-0.9.8/tools/Makefile.am +@@ -153,24 +153,22 @@ install-data-local: install-init install + uninstall-local: uninstall-init uninstall-systemd - if LIBVIRT_INIT_SCRIPT_RED_HAT - install-init: libvirt-guests.init -- mkdir -p $(DESTDIR)$(sysconfdir)/rc.d/init.d -+ mkdir -p $(DESTDIR)$(sysconfdir)/init.d - $(INSTALL_SCRIPT) libvirt-guests.init \ -- $(DESTDIR)$(sysconfdir)/rc.d/init.d/libvirt-guests -- mkdir -p $(DESTDIR)$(sysconfdir)/sysconfig -+ $(DESTDIR)$(sysconfdir)/init.d/libvirt-guests -+ mkdir -p $(DESTDIR)$(localstatedir)/adm/fillup-templates + install-sysconfig: +- $(MKDIR_P) $(DESTDIR)$(sysconfdir)/sysconfig ++ $(MKDIR_P) $(DESTDIR)$(localstatedir)/adm/fillup-templates $(INSTALL_DATA) $(srcdir)/libvirt-guests.sysconf \ - $(DESTDIR)$(sysconfdir)/sysconfig/libvirt-guests -+ $(DESTDIR)$(localstatedir)/adm/fillup-templates/sysconfig.libvirt-guests ++ $(DESTDIR)$(localstatedir)/adm/fillup-templates/sysconfig.libvirt-guests - uninstall-init: -- rm -f $(DESTDIR)$(sysconfdir)/rc.d/init.d/libvirt-guests \ -- $(DESTDIR)$(sysconfdir)/sysconfig/libvirt-guests -+ rm -f $(DESTDIR)$(sysconfdir)/init.d/libvirt-guests \ -+ $(DESTDIR)$(sysconfdir)/sysconfig/libvirt-guests \ -+ $(DESTDIR)$(localstatedir)/adm/fillup-templates/sysconfig.libvirt-guests + uninstall-sysconfig: +- rm -f $(DESTDIR)$(sysconfdir)/sysconfig/libvirt-guests +- rmdir $(DESTDIR)$(sysconfdir)/sysconfig ||: ++ rm -f $(DESTDIR)$(localstatedir)/adm/fillup-templates/sysconfig.libvirt-guests - BUILT_SOURCES += libvirt-guests.init + EXTRA_DIST += libvirt-guests.init.sh -Index: libvirt-0.9.7/tools/libvirt-guests.sysconf + install-initscript: libvirt-guests.init +- $(MKDIR_P) $(DESTDIR)$(sysconfdir)/rc.d/init.d ++ $(MKDIR_P) $(DESTDIR)$(sysconfdir)/init.d + $(INSTALL_SCRIPT) libvirt-guests.init \ +- $(DESTDIR)$(sysconfdir)/rc.d/init.d/libvirt-guests ++ $(DESTDIR)$(sysconfdir)/init.d/libvirt-guests + + uninstall-initscript: +- rm -f $(DESTDIR)$(sysconfdir)/rc.d/init.d/libvirt-guests +- rmdir $(DESTDIR)$(sysconfdir)/rc.d/init.d ||: ++ rm -f $(DESTDIR)$(sysconfdir)/init.d/libvirt-guests + + + if LIBVIRT_INIT_SCRIPT_RED_HAT +Index: libvirt-0.9.8/tools/libvirt-guests.sysconf =================================================================== ---- libvirt-0.9.7.orig/tools/libvirt-guests.sysconf -+++ libvirt-0.9.7/tools/libvirt-guests.sysconf +--- libvirt-0.9.8.orig/tools/libvirt-guests.sysconf ++++ libvirt-0.9.8/tools/libvirt-guests.sysconf @@ -1,18 +1,28 @@ +## Path: System/Virtualization/libvirt + @@ -80,10 +87,10 @@ Index: libvirt-0.9.7/tools/libvirt-guests.sysconf # If non-zero, try to bypass the file system cache when saving and # restoring guests, even though this may give slower operation for # some file systems. -Index: libvirt-0.9.7/tools/libvirt-guests.init.sh +Index: libvirt-0.9.8/tools/libvirt-guests.init.sh =================================================================== ---- libvirt-0.9.7.orig/tools/libvirt-guests.init.sh -+++ libvirt-0.9.7/tools/libvirt-guests.init.sh +--- libvirt-0.9.8.orig/tools/libvirt-guests.init.sh ++++ libvirt-0.9.8/tools/libvirt-guests.init.sh @@ -4,10 +4,10 @@ # ### BEGIN INIT INFO @@ -226,31 +233,45 @@ Index: libvirt-0.9.7/tools/libvirt-guests.init.sh esac -exit $RETVAL +rc_exit -Index: libvirt-0.9.7/daemon/Makefile.am +Index: libvirt-0.9.8/daemon/Makefile.am =================================================================== ---- libvirt-0.9.7.orig/daemon/Makefile.am -+++ libvirt-0.9.7/daemon/Makefile.am -@@ -236,20 +236,12 @@ install-logrotate: $(LOGROTATE_CONFS) +--- libvirt-0.9.8.orig/daemon/Makefile.am ++++ libvirt-0.9.8/daemon/Makefile.am +@@ -249,34 +249,23 @@ uninstall-logrotate: + rmdir $(DESTDIR)$(sysconfdir)/logrotate.d || : - if LIBVIRT_INIT_SCRIPT_RED_HAT - install-init: libvirtd.init -- mkdir -p $(DESTDIR)$(sysconfdir)/rc.d/init.d \ -- $(DESTDIR)$(sysconfdir)/sysconfig \ -- $(DESTDIR)$(sysconfdir)/sysctl.d -- $(INSTALL_SCRIPT) libvirtd.init \ -- $(DESTDIR)$(sysconfdir)/rc.d/init.d/libvirtd -+ mkdir -p $(DESTDIR)$(localstatedir)/adm/fillup-templates + install-sysconfig: +- $(MKDIR_P) $(DESTDIR)$(sysconfdir)/sysconfig ++ $(MKDIR_P) $(DESTDIR)$(localstatedir)/adm/fillup-templates $(INSTALL_DATA) $(srcdir)/libvirtd.sysconf \ - $(DESTDIR)$(sysconfdir)/sysconfig/libvirtd ++ $(DESTDIR)$(localstatedir)/adm/fillup-templates/sysconfig.libvirtd + uninstall-sysconfig: +- rm -f $(DESTDIR)$(sysconfdir)/sysconfig/libvirtd +- rmdir $(DESTDIR)$(sysconfdir)/sysconfig || : ++ rm -f $(DESTDIR)$(localstatedir)/adm/fillup-templates/sysconfig.libvirtd + + install-sysctl: +- $(MKDIR_P) $(DESTDIR)$(sysconfdir)/sysctl.d - $(INSTALL_DATA) $(srcdir)/libvirtd.sysctl \ - $(DESTDIR)$(sysconfdir)/sysctl.d/libvirtd -+ $(DESTDIR)$(localstatedir)/adm/fillup-templates/sysconfig.libvirtd - uninstall-init: -- rm -f $(DESTDIR)$(sysconfdir)/rc.d/init.d/libvirtd \ -- $(DESTDIR)$(sysconfdir)/sysconfig/libvirtd \ -- $(DESTDIR)$(sysconfdir)/sysctl.d/libvirtd -+ rm -f $(DESTDIR)$(localstatedir)/adm/fillup-templates/sysconfig.libvirtd + uninstall-sysctl: +- rm -f $(DESTDIR)$(sysconfdir)/sysctl.d/libvirtd +- rmdir $(DESTDIR)$(sysconfdir)/sysctl.d || : + + if LIBVIRT_INIT_SCRIPT_RED_HAT BUILT_SOURCES += libvirtd.init + install-init-redhat: install-sysconfig libvirtd.init +- $(MKDIR_P) $(DESTDIR)$(sysconfdir)/rc.d/init.d +- $(INSTALL_SCRIPT) libvirtd.init \ +- $(DESTDIR)$(sysconfdir)/rc.d/init.d/libvirtd + + uninstall-init-redhat: uninstall-sysconfig +- rm -f $(DESTDIR)$(sysconfdir)/rc.d/init.d/libvirtd +- rmdir $(DESTDIR)$(sysconfdir)/rc.d/init.d || : + else + install-init-redhat: + uninstall-init-redhat: diff --git a/xen-domctl-ver8.patch b/xen-domctl-ver8.patch index e98a2ab..c40f4d7 100644 --- a/xen-domctl-ver8.patch +++ b/xen-domctl-ver8.patch @@ -1,8 +1,8 @@ -Index: libvirt-0.9.7/src/xen/xen_hypervisor.c +Index: libvirt-0.9.8/src/xen/xen_hypervisor.c =================================================================== ---- libvirt-0.9.7.orig/src/xen/xen_hypervisor.c -+++ libvirt-0.9.7/src/xen/xen_hypervisor.c -@@ -242,12 +242,30 @@ struct xen_v2d7_getdomaininfo { +--- libvirt-0.9.8.orig/src/xen/xen_hypervisor.c ++++ libvirt-0.9.8/src/xen/xen_hypervisor.c +@@ -243,12 +243,30 @@ struct xen_v2d7_getdomaininfo { }; typedef struct xen_v2d7_getdomaininfo xen_v2d7_getdomaininfo; @@ -33,7 +33,7 @@ Index: libvirt-0.9.7/src/xen/xen_hypervisor.c }; typedef union xen_getdomaininfo xen_getdomaininfo; -@@ -257,6 +275,7 @@ union xen_getdomaininfolist { +@@ -258,6 +276,7 @@ union xen_getdomaininfolist { struct xen_v2d5_getdomaininfo *v2d5; struct xen_v2d6_getdomaininfo *v2d6; struct xen_v2d7_getdomaininfo *v2d7; @@ -41,7 +41,7 @@ Index: libvirt-0.9.7/src/xen/xen_hypervisor.c }; typedef union xen_getdomaininfolist xen_getdomaininfolist; -@@ -294,179 +313,211 @@ typedef struct xen_v2s5_availheap xen_v +@@ -295,179 +314,211 @@ typedef struct xen_v2s5_availheap xen_v #define XEN_GETDOMAININFOLIST_ALLOC(domlist, size) \ (hv_versions.hypervisor < 2 ? \ (VIR_ALLOC_N(domlist.v0, (size)) == 0) : \ @@ -269,7 +269,7 @@ Index: libvirt-0.9.7/src/xen/xen_hypervisor.c static int -@@ -2141,12 +2192,20 @@ xenHypervisorInit(struct xenHypervisorVe +@@ -2142,12 +2193,20 @@ xenHypervisorInit(struct xenHypervisorVe /* Xen 4.1 * sysctl version 8 -> xen-unstable c/s 21118:28e5409e3fb3 * domctl version 7 -> xen-unstable c/s 21212:de94884a669c diff --git a/xen-name-for-devid.patch b/xen-name-for-devid.patch index d38aebb..eb4eee5 100644 --- a/xen-name-for-devid.patch +++ b/xen-name-for-devid.patch @@ -13,10 +13,10 @@ Date: Wed Jan 27 16:11:41 2010 -0700 This approach allows removing a disk when domain is inactive. We obviously can't search xenstore when the domain is inactive. -Index: libvirt-0.9.7/src/xen/xend_internal.c +Index: libvirt-0.9.8/src/xen/xend_internal.c =================================================================== ---- libvirt-0.9.7.orig/src/xen/xend_internal.c -+++ libvirt-0.9.7/src/xen/xend_internal.c +--- libvirt-0.9.8.orig/src/xen/xend_internal.c ++++ libvirt-0.9.8/src/xen/xend_internal.c @@ -60,6 +60,7 @@ static int diff --git a/xen-pv-cdrom.patch b/xen-pv-cdrom.patch index 572b781..f920f2b 100644 --- a/xen-pv-cdrom.patch +++ b/xen-pv-cdrom.patch @@ -1,7 +1,7 @@ -Index: libvirt-0.9.7/src/xenxs/xen_sxpr.c +Index: libvirt-0.9.8/src/xenxs/xen_sxpr.c =================================================================== ---- libvirt-0.9.7.orig/src/xenxs/xen_sxpr.c -+++ libvirt-0.9.7/src/xenxs/xen_sxpr.c +--- libvirt-0.9.8.orig/src/xenxs/xen_sxpr.c ++++ libvirt-0.9.8/src/xenxs/xen_sxpr.c @@ -329,7 +329,7 @@ error: static int xenParseSxprDisks(virDomainDefPtr def,