From 7c228b7521aed087e5d92b7c621e0f44c15f604a Mon Sep 17 00:00:00 2001
From: Cole Robinson defaultMode
attribute sets the default channel
++ security policy, valid values are secure
,
++ insecure
and the default any
++ (which is secure if possible, but falls back to insecure
++ rather than erroring out if no secure path is
++ available). "defaultMode" since
++ 0.9.12.
+
+ When SPICE has both a normal and TLS secured TCP port
+diff --git a/docs/schemas/domaincommon.rng b/docs/schemas/domaincommon.rng
+index 5bcf1b9..30ab4c6 100644
+--- a/docs/schemas/domaincommon.rng
++++ b/docs/schemas/domaincommon.rng
+@@ -1779,6 +1779,15 @@
+
+
+
++ main
, display
,
+ inputs
, cursor
,
+- playback
, record
;
+- and since
+- 0.8.8: smartcard
.
++ playback
, record
++ (all since 0.8.6);
++ smartcard
(since
++ 0.8.8); and usbredir
++ (since 0.9.12).
+
+ <graphics type='spice' port='-1' tlsPort='-1' autoport='yes'> +diff --git a/docs/schemas/domaincommon.rng b/docs/schemas/domaincommon.rng +index 0cc04af..5bcf1b9 100644 +--- a/docs/schemas/domaincommon.rng ++++ b/docs/schemas/domaincommon.rng +@@ -1792,6 +1792,7 @@ +playback +record +smartcard ++usbredir + + ++diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c +index d886b60..d017ea4 100644 +--- a/src/conf/domain_conf.c ++++ b/src/conf/domain_conf.c +@@ -428,7 +428,8 @@ VIR_ENUM_IMPL(virDomainGraphicsSpiceChannelName, + "cursor", + "playback", + "record", +- "smartcard"); ++ "smartcard", ++ "usbredir"); + + VIR_ENUM_IMPL(virDomainGraphicsSpiceChannelMode, + VIR_DOMAIN_GRAPHICS_SPICE_CHANNEL_MODE_LAST, +diff --git a/src/conf/domain_conf.h b/src/conf/domain_conf.h +index 1b8741e..a2fea00 100644 +--- a/src/conf/domain_conf.h ++++ b/src/conf/domain_conf.h +@@ -1097,6 +1097,7 @@ enum virDomainGraphicsSpiceChannelName { + VIR_DOMAIN_GRAPHICS_SPICE_CHANNEL_PLAYBACK, + VIR_DOMAIN_GRAPHICS_SPICE_CHANNEL_RECORD, + VIR_DOMAIN_GRAPHICS_SPICE_CHANNEL_SMARTCARD, ++ VIR_DOMAIN_GRAPHICS_SPICE_CHANNEL_USBREDIR, + + VIR_DOMAIN_GRAPHICS_SPICE_CHANNEL_LAST + }; +diff --git a/tests/qemuxml2argvdata/qemuxml2argv-graphics-spice-usb-redir.args b/tests/qemuxml2argvdata/qemuxml2argv-graphics-spice-usb-redir.args +new file mode 100644 +index 0000000..35e51a7 +--- /dev/null ++++ b/tests/qemuxml2argvdata/qemuxml2argv-graphics-spice-usb-redir.args +@@ -0,0 +1,16 @@ ++LC_ALL=C PATH=/bin HOME=/home/test USER=test LOGNAME=test QEMU_AUDIO_DRV=spice /usr/bin/qemu -S -M pc -m 214 -smp 1 -nodefconfig -nodefaults -chardev socket,id=charmonitor,path=/tmp/test-monitor,server,nowait -mon chardev=charmonitor,id=monitor,mode=readline -no-acpi -boot c \ ++-device ich9-usb-ehci1,id=usb,bus=pci.0,addr=0x4.0x7 \ ++-device ich9-usb-uhci1,masterbus=usb.0,firstport=0,bus=pci.0,multifunction=on,addr=0x4 \ ++-device ich9-usb-uhci2,masterbus=usb.0,firstport=2,bus=pci.0,addr=0x4.0x1 \ ++-device ich9-usb-uhci3,masterbus=usb.0,firstport=4,bus=pci.0,addr=0x4.0x2 \ ++-spice port=5903,tls-port=5904,addr=127.0.0.1,\ ++x509-dir=/etc/pki/libvirt-spice,tls-channel=main,plaintext-channel=inputs,\ ++tls-channel=usbredir,\ ++image-compression=auto_glz,jpeg-wan-compression=auto,zlib-glz-wan-compression=auto,\ ++playback-compression=on,streaming-video=filter,disable-copy-paste \ ++-vga cirrus \ ++-chardev socket,id=charredir0,host=localhost,port=4000 \ ++-device usb-redir,chardev=charredir0,id=redir0 \ ++-chardev spicevmc,id=charredir1,name=usbredir \ ++-device usb-redir,chardev=charredir1,id=redir1,bus=usb.0,port=4 \ ++-device virtio-balloon-pci,id=balloon0,bus=pci.0,addr=0x3 +diff --git a/tests/qemuxml2argvdata/qemuxml2argv-graphics-spice-usb-redir.xml b/tests/qemuxml2argvdata/qemuxml2argv-graphics-spice-usb-redir.xml +new file mode 100644 +index 0000000..1dc23bd +--- /dev/null ++++ b/tests/qemuxml2argvdata/qemuxml2argv-graphics-spice-usb-redir.xml +@@ -0,0 +1,53 @@ ++ ++ +diff --git a/tests/qemuxml2argvtest.c b/tests/qemuxml2argvtest.c +index a32d4f8..b128c07 100644 +--- a/tests/qemuxml2argvtest.c ++++ b/tests/qemuxml2argvtest.c +@@ -540,6 +540,12 @@ mymain(void) + QEMU_CAPS_VGA, QEMU_CAPS_VGA_QXL, + QEMU_CAPS_DEVICE, QEMU_CAPS_SPICE, + QEMU_CAPS_DEVICE_QXL_VGA); ++ DO_TEST("graphics-spice-usb-redir", false, ++ QEMU_CAPS_VGA, QEMU_CAPS_SPICE, ++ QEMU_CAPS_CHARDEV, QEMU_CAPS_DEVICE, QEMU_CAPS_NODEFCONFIG, ++ QEMU_CAPS_PCI_MULTIFUNCTION, QEMU_CAPS_USB_HUB, ++ QEMU_CAPS_ICH9_USB_EHCI1, QEMU_CAPS_USB_REDIR, ++ QEMU_CAPS_CHARDEV_SPICEVMC); + + DO_TEST("input-usbmouse", false, NONE); + DO_TEST("input-usbtablet", false, NONE); +-- +1.7.7.6 + diff --git a/libvirt.spec b/libvirt.spec index a5c6437..c27ce8b 100644 --- a/libvirt.spec +++ b/libvirt.spec @@ -126,8 +126,9 @@ %define with_hyperv 0 %endif -# Although earlier Fedora has systemd, libvirt still used sysvinit -%if 0%{?fedora} >= 17 +# Fedora 17 / RHEL-7 are first where we use systemd. Although earlier +# Fedora has systemd, libvirt still used sysvinit there. +%if 0%{?fedora} >= 17 || 0%{?rhel} >= 7 %define with_systemd 1 %endif @@ -224,7 +225,7 @@ %define with_libpcap 0%{!?_without_libpcap:%{server_drivers}} %define with_macvtap 0%{!?_without_macvtap:%{server_drivers}} -# numad is used to manage the CPU placement dynamically, +# numad is used to manage the CPU and memory placement dynamically, # it's not available on s390[x] and ARM. %if 0%{?fedora} >= 17 || 0%{?rhel} >= 6 %ifnarch s390 s390x %{arm} @@ -272,13 +273,25 @@ Summary: Library providing a simple virtualization API Name: libvirt -Version: 0.9.11.3 +Version: 0.9.11.4 Release: 1%{?dist}%{?extra_release} License: LGPLv2+ Group: Development/Libraries -Source: http://libvirt.org/sources/libvirt-%{version}.tar.gz -# Replace fedora-13->pc-0.14 to prep for qemu removing the latter (bz 754772) + +%if %(echo %{version} | grep -o \\. | wc -l) == 3 +%define mainturl stable_updates/ +%endif +Source: http://libvirt.org/sources/%{?mainturl}libvirt-%{version}.tar.gz + +# Replace fedora-13->pc-0.14 to prep for qemu removal (bz 754772) +# keep: keeping this for the lifetime of F17, gone for newer releases Patch1: %{name}-qemu-replace-deprecated-fedora-13-machine.patch +# Add usbredir spice channel (bz 821469) +# keep: fedora feature backport that won't hit 0.9.11 maint +Patch2: %{name}-add-usbredir-spice-channel.patch +# Add default spice channel (bz 821474) +# keep: fedora feature backport that won't hit 0.9.11 maint +Patch3: %{name}-add-default-spice-channel.patch BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root URL: http://libvirt.org/ @@ -327,7 +340,11 @@ BuildRequires: augeas BuildRequires: hal-devel %endif %if %{with_udev} +%if 0%{?fedora} >= 18 || 0%{?rhel} >= 7 +BuildRequires: systemd-devel >= 185 +%else BuildRequires: libudev-devel >= 145 +%endif BuildRequires: libpciaccess-devel >= 0.10.9 %endif %if %{with_yajl} @@ -459,6 +476,8 @@ BuildRequires: scrub BuildRequires: numad %endif +Provides: bundled(gnulib) + %description Libvirt is a C toolkit to interact with the virtualization capabilities of recent versions of Linux (and other OSes). The main package includes @@ -717,7 +736,7 @@ Group: Development/Libraries Requires: sanlock >= 1.8 #for virt-sanlock-cleanup require augeas Requires: augeas -Requires: %{name} = %{version}-%{release} +Requires: %{name}-daemon = %{version}-%{release} %description lock-sanlock Includes the Sanlock lock manager plugin for the QEMU @@ -740,6 +759,8 @@ of recent versions of Linux (and other OSes). %prep %setup -q %patch1 -p1 +%patch2 -p1 +%patch3 -p1 %build %if ! %{with_xen} @@ -1092,9 +1113,9 @@ if [ $1 -eq 1 ] ; then fi %else %if %{with_cgconfig} -# Starting with Fedora 16, systemd automounts all cgroups, and cgconfig is -# no longer a necessary service. -%if 0%{?rhel} || (0%{?fedora} && 0%{?fedora} < 16) +# Starting with Fedora 16/RHEL-7, systemd automounts all cgroups, +# and cgconfig is no longer a necessary service. +%if (0%{?rhel} && 0%{?rhel} < 7) || (0%{?fedora} && 0%{?fedora} < 16) if [ "$1" -eq "1" ]; then /sbin/chkconfig cgconfig on fi @@ -1464,6 +1485,18 @@ rm -f $RPM_BUILD_ROOT%{_sysconfdir}/sysctl.d/libvirtd %endif %changelog +* Fri Jun 15 2012 Cole RobinsonQEMUGuest1 ++c7a5fdbd-edaf-9455-926a-d65c16db1809 ++219136 ++219136 ++1 ++++ ++hvm ++++ ++ destroy ++restart ++destroy ++++ ++/usr/bin/qemu ++++ ++++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++++ ++++ ++ ++ ++++ ++ ++ ++++ ++ ++ ++ ++++ ++ ++ ++++ - 0.9.11.4-1 +- Rebased to version 0.9.11.4 +- Add usbredir spice channel (bz 821469) +- Add default spice channel (bz 821474) +- Fix libnuma dependency (bz 812874) +- Fix USB device attach ambiguity CVE-2012-2693 (bz 816560) +- Add bundled(gnulib) provides (bz 821776) +- Drop unneeded systemd unit deps (bz 824204) +- Update qemu.conf augeas lens (bz 824672) +- Fix several double close bugs (bz 827125) +- Fix potential deadlock when launching sub processes (bz 828565) + * Fri Apr 27 2012 Cole Robinson - 0.9.11.3-1 - Rebased to version 0.9.11.3 - Abide URI username when connecting to hypervisor (bz 811397) diff --git a/sources b/sources index e2c63fe..5f2cfc9 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -3c598b729dabdce08ef5b8741cc1b220 libvirt-0.9.11.3.tar.gz +b21e49d36e9d4bbd3c5b04c222702a1e libvirt-0.9.11.4.tar.gz