Name: spice Version: 0.12.4 Release: 19%{?dist} Summary: Implements the SPICE protocol Group: User Interface/Desktops License: LGPLv2+ URL: http://www.spice-space.org/ Source0: http://www.spice-space.org/download/releases/%{name}-%{version}.tar.bz2 Patch1: 0001-red_channel-prevent-adding-and-pushing-pipe-items-af.patch Patch2: 0002-red_channel-add-ref-count-to-RedClient.patch Patch3: 0003-main_dispatcher-add-ref-count-protection-to-RedClien.patch Patch4: 0004-decouple-disconnection-of-the-main-channel-from-clie.patch Patch5: 0005-reds-s-red_client_disconnect-red_channel_client_shut.patch Patch6: 0006-snd_worker-fix-memory-leak-of-PlaybackChannel.patch Patch7: 0007-snd_worker-snd_disconnect_channel-don-t-call-snd_cha.patch Patch8: 0008-log-improve-debug-information-related-to-client-disc.patch Patch9: 0009-red_worker-decrease-the-timeout-when-flushing-comman.patch Patch10: 0010-Fix-buffer-overflow-when-decrypting-client-SPICE-tic.patch Patch11: 0011-server-move-three-functions-to-red_channel.patch Patch12: 0012-server-s-red_wait_all_sent-red_channel_wait_all_sent.patch Patch13: 0013-red_worker-cleanup-red_clear_surface_drawables_from_.patch Patch14: 0014-red_channel-cleanup-of-red_channel_client-blocking-m.patch Patch15: 0015-red_worker-disconnect-the-channel-instead-of-shutdow.patch Patch16: 0016-spice_timer_queue-don-t-call-timers-repeatedly.patch Patch17: 0017-red_channel-add-on_input-callback-for-tracing-incomi.patch Patch18: 0018-red_channel-add-option-to-monitor-whether-a-channel-.patch Patch19: 0019-main_channel-monitoring-client-connection-status.patch Patch20: 0020-Fix-crash-when-clearing-surface-memory.patch Patch21: 0021-Fix-assert-in-mjpeg_encoder_adjust_params_to_bit_rat.patch Patch22: 0022-reds-lookup-corresponding-channel-id.patch Patch23: 0023-dispatcher-lower-a-monitor-config-warning-to-a-debug.patch Patch24: 0024-mjpeg-Don-t-warn-on-unsupported-image-formats.patch Patch25: 0025-server-Don-t-dump-the-bitmap-when-the-format-is-inva.patch Patch26: 0026-Fix-Wunused-parameter.patch Patch27: 0027-Fix-Wunused-value.patch Patch28: 0028-Fix-Wsign.patch Patch29: 0029-Fix-Wswitch.patch Patch30: 0030-Fix-Wformat.patch Patch31: 0031-Fix-Wnonnull.patch Patch32: 0032-Fix-Wmissing-field-initializers.patch Patch33: 0033-Fix-Wunused-function.patch Patch34: 0034-Validate-surface-bounding-box-before-using-it.patch Patch35: 0035-migration-Don-t-assert-if-MIGRATE_DATA-comes-before-.patch Patch36: 0036-server-fix-crash-when-restarting-VM-with-old-client.patch Patch37: 0037-Use-TLS-version-1.0-or-better.patch Patch38: 0038-Add-const-to-test_capability-first-argument.patch Patch39: 0039-Introduce-red_link_info_test_capability.patch Patch40: 0040-Don-t-set-SpiceLinkReply-pub_key-if-client-advertise.patch Patch41: 0041-server-don-t-assert-on-invalid-client-message.patch Patch42: 0042-Don-t-truncate-large-now-values-in-_spice_timer_set.patch Patch43: 0043-Avoid-race-conditions-reading-monitor-configs-from-g.patch Patch44: 0044-Lock-the-pixmap-image-cache-for-the-entire-fill_bits.patch Patch45: 0045-reds-Assure-we-don-t-have-stale-statistic-files-befo.patch Patch46: 0046-worker-validate-correctly-surfaces.patch Patch47: 0047-worker-avoid-double-free-or-double-create-of-surface.patch Patch48: 0048-Define-a-constant-to-limit-data-from-guest.patch Patch49: 0049-Fix-some-integer-overflow-causing-large-memory-alloc.patch Patch50: 0050-Check-properly-surface-to-be-created.patch Patch51: 0051-Fix-buffer-reading-overflow.patch Patch52: 0052-Prevent-32-bit-integer-overflow-in-bitmap_consistent.patch Patch53: 0053-Fix-race-condition-on-red_get_clip_rects.patch Patch54: 0054-Fix-race-in-red_get_image.patch Patch55: 0055-Fix-race-condition-in-red_get_string.patch Patch56: 0056-Fix-integer-overflow-computing-glyph_size-in-red_get.patch Patch57: 0057-Fix-race-condition-in-red_get_data_chunks_ptr.patch Patch58: 0058-Prevent-memory-leak-if-red_get_data_chunks_ptr-fails.patch Patch59: 0059-Prevent-DoS-from-guest-trying-to-allocate-too-much-d.patch Patch60: 0060-Fix-some-possible-overflows-in-red_get_string-for-32.patch Patch61: 0061-Make-sure-we-can-read-QXLPathSeg-structures.patch Patch62: 0062-Avoid-race-condition-copying-segments-in-red_get_pat.patch Patch63: 0063-Prevent-data_size-to-be-set-independently-from-data.patch Patch64: 0064-Prevent-leak-if-size-from-red_get_data_chunks-don-t-.patch Patch65: 0065-smartcard-add-a-ref-to-item-before-adding-to-pipe.patch Patch66: 0066-smartcard-allocate-msg-with-the-expected-size.patch Patch67: 0067-create-a-function-to-validate-surface-parameters.patch Patch68: 0068-improve-primary-surface-parameter-checks.patch Patch69: 0069-reds-Do-not-abort-due-to-wrong-header.patch Patch70: 0070-memslot-do-not-crash-if-guest-provide-a-wrong-addres.patch Patch71: 0071-red-channel-make-red_client_-ref-unref-thread-safe.patch Patch72: 0072-chardev-remove-write-polling.patch Patch73: 0073-clean-up-remove-unused-function.patch Patch74: 0074-Remove-guest-side-video-time-stamping.patch Patch75: 0075-char-device-fix-usage-of-free-unref-on-WriteBuffer.patch Patch76: 0076-spicevmc-set-state-of-DeviceInstance-to-NULL.patch Patch77: 0077-char-device-set-to-NULL-freed-pointers-on-destroy.patch Patch78: 0078-channel-add-option-tcp-keepalive-timeout-to-channels.patch Patch79: 0079-Always-enable-TCP-keepalive.patch Patch80: 0080-Remove-spice_server_set_keepalive_timeout.patch Patch81: 0081-sound-do-not-modify-client-state-on-migration.patch Patch82: 0082-char-device-spice_char_device_write_to_device-protec.patch Patch83: 0083-server-allows-to-set-maximum-monitors.patch Patch84: 0084-Call-migrate_end_complete-after-falling-back-to-swit.patch # https://bugzilla.redhat.com/show_bug.cgi?id=613529 %if 0%{?rhel} ExclusiveArch: x86_64 %else ExclusiveArch: i686 x86_64 armv6l armv7l armv7hl %endif BuildRequires: pkgconfig BuildRequires: glib2-devel >= 2.22 # BuildRequires: spice-protocol >= 0.12.3 -- not needed since spice-0.11.3 BuildRequires: celt051-devel BuildRequires: pixman-devel alsa-lib-devel openssl-devel libjpeg-turbo-devel BuildRequires: libcacard-devel cyrus-sasl-devel BuildRequires: pyparsing BuildRequires: git %description The Simple Protocol for Independent Computing Environments (SPICE) is a remote display system built for virtual environments which allows you to view a computing 'desktop' environment not only on the machine where it is running, but from anywhere on the Internet and from a wide variety of machine architectures. %package server Summary: Implements the server side of the SPICE protocol Group: System Environment/Libraries Obsoletes: spice-client < %{version}-%{release} %description server The Simple Protocol for Independent Computing Environments (SPICE) is a remote display system built for virtual environments which allows you to view a computing 'desktop' environment not only on the machine where it is running, but from anywhere on the Internet and from a wide variety of machine architectures. This package contains the run-time libraries for any application that wishes to be a SPICE server. %package server-devel Summary: Header files, libraries and development documentation for spice-server Group: Development/Libraries Requires: %{name}-server%{?_isa} = %{version}-%{release} Requires: pkgconfig Requires: spice-protocol >= 0.12.3 %description server-devel This package contains the header files, static libraries and development documentation for spice-server. If you like to develop programs using spice-server, you will need to install spice-server-devel. %prep %autosetup -S git_am %build %define configure_client --disable-client %configure --enable-smartcard %{configure_client} make %{?_smp_mflags} WARN_CFLAGS='' V=1 %install make DESTDIR=%{buildroot} install rm -f %{buildroot}%{_libdir}/libspice-server.a rm -f %{buildroot}%{_libdir}/libspice-server.la mkdir -p %{buildroot}%{_libexecdir} %post server -p /sbin/ldconfig %postun server -p /sbin/ldconfig %files server %doc COPYING README NEWS %{_libdir}/libspice-server.so.1* %files server-devel %{_includedir}/spice-server %{_libdir}/libspice-server.so %{_libdir}/pkgconfig/spice-server.pc %changelog * Fri Sep 09 2016 Christophe Fergeau 0.12.4-19 - Ensure SPICE_MIGRATE_COMPLETED is sent in all cases when it's needed. Resolves: rhbz#1352836 * Fri Jul 01 2016 Christophe Fergeau - 0.12.4-18 - Fix crash when connecting to VM using smartcard passthrough Resolves: rhbz#1340899 - Fix hang after unredirecting a USB device Resolves: rhbz#1338752 - Backport spice_qxl_set_max_monitors() Resolves: rhbz#1283202 * Wed Apr 27 2016 Christophe Fergeau - 0.12.4-17 - Fix crash when the client sends a wrong header (for example when using spice-html5) Resolves: rhbz#1281442 - Fix crash when guest provides wrong address Resolves: rhbz#1264356 - Fix thread-safety issue causing a crash when playing a Youtube video spanning multiple monitors Resolves: rhbz#1253375 - Add patches reducing QEMU wake-ups Related: rhbz#912763, rhbz#1186146 - Fix use-after-free after resetting a VM Resolves: rhbz#1281455 - Send KeepAlive probes every 10 minutes Resolves: rhbz#1298590 - Add client to guest volume synchronization Resolves: rhbz#1264107 * Mon Apr 25 2016 Christophe Fergeau - 0.12.4-16 - Use autosetup Related: CVE-2016-0749 - Fix heap-based memory corruption within smartcard handling Resolves: CVE-2016-0749 - Fix host memory access from guest with invalid primary surface parameters Resolves: CVE-2016-2150 * Wed Sep 23 2015 Frediano Ziglio 0.12.4-15 - CVE-2015-5260 CVE-2015-5261 fixed various security flaws Resolves: rhbz#1267134 * Thu Sep 10 2015 Frediano Ziglio 0.12.4-14 - Validate surface_id Resolves: rhbz#1260971 * Tue Jul 21 2015 Frediano Ziglio 0.12.4-13 - Clean stale statistics file before creating a new one Resolves: rhbz#1177326 * Fri Jul 10 2015 Fabiano Fidêncio 0.12.4-12 - Fix a backport issue on Patch0040. Related: rhbz#1071176 Resolves: rhbz#1241860 * Thu Jul 09 2015 Fabiano Fidêncio 0.12.4-11 - Don't assert on invalid client message Resolves: rhbz#1227410 - Don't truncate large 'now' values in _spice_timer_set Resolves: rhbz#1227408 - Avoid race conditions reading monitor configs from guest Resolves: rhbz#1239128 - Lock the pixmap image cache for the entire fill_bits call Resolves: rhbz#1235443 * Wed Jul 08 2015 Fabiano Fidêncio 0.12.4-10 - Fix qemu segmentation fault (core dumped) when boot KVM guest with spice in FIPS enabled mode. Resolves: rhbz#1071176 * Mon Jan 05 2015 Marc-Andre Lureau 0.12.4-9 - Allow recent TLS/SSL methods, block SSLv2/SSLv3. Resolves: rhbz#1175540 * Tue Oct 21 2014 Christophe Fergeau 0.12.4-8 - Fix defects reported by Coverity Resolves: rhbz#885717 - Validate surface bounding box sent from QXL driver Resolves: rhbz#1052856 - Fix assertion sometimes happening during migration while a client is connected Resolves: rhbz#1035184 - Fix crash when restarting VM with old client Resolves: rhbz#1145919 * Thu Sep 18 2014 Christophe Fergeau 0.12.4-7 - Fix assert in mjpeg_encoder_adjust_params_to_bit_rate() Resolves: rhbz#1086823 - Fix "Spice-ERROR **: reds.c:1464:reds_send_link_ack: assertion `link->link_mess->channel_type == SPICE_CHANNEL_MAIN' failed" assertion Resolves: rhbz#1058625 - Lower a monitor-config warning to debug level Resolves: rhbz#1119220 - mjpeg: Don't warn on unsupported image formats Resolves: rhbz#1070028 * Thu Aug 07 2014 Marc-Andre Lureau 0.12.4-6 - Fix invalid surface clearing Resolves: rhbz#1029646 * Wed Jan 29 2014 Christophe Fergeau 0.12.4-5 - Fix qemu crash during migration with reboot Resolves: rhbz#1016795 - Monitor whether the client is alive Resolves: rhbz#1016790 * Tue Oct 15 2013 Christophe Fergeau 0.12.4-3 - Fix spice-server crash when client sends a password which is too long Resolves: CVE-2013-4282 * Fri Sep 13 2013 Christophe Fergeau 0.12.4-2 - Add upstream patch fixing rhbz#995041 * Fri Aug 2 2013 Hans de Goede - 0.12.4-1 - Add patches from upstream git to fix sound-channel-free crash (rhbz#986407) - Add Obsoletes for dropped spice-client sub-package * Mon Jul 22 2013 Yonit Halperin 0.12.4-1 - New upstream release 0.12.4 - Require libjpeg-turbo-devel instead of libjpeg-devel - Remove "BuildRequires: spice-protocol" from spice-server - Add "Requires: spice-protocol" to spice-server-devel. * Thu May 23 2013 Christophe Fergeau 0.12.3-2 - Stop building spicec, it's obsolete and superseded by remote-viewer (part of virt-viewer) * Tue May 21 2013 Christophe Fergeau 0.12.3-1 - New upstream release 0.12.3 - Drop all patches (they were all upstreamed) * Mon Apr 15 2013 Hans de Goede - 0.12.2-4 - Add fix from upstream for a crash when the guest uses RGBA (rhbz#952242) * Thu Mar 07 2013 Adam Jackson 0.12.2-4 - Rebuild for new libsasl2 soname in F19 * Mon Jan 21 2013 Hans de Goede - 0.12.2-3 - Add a number of misc. bug-fixes from upstream * Fri Dec 21 2012 Adam Tkac - 0.12.2-2 - rebuild against new libjpeg * Thu Dec 20 2012 Hans de Goede - 0.12.2-1 - New upstream release 0.12.2 * Fri Sep 28 2012 Hans de Goede - 0.12.0-1 - New upstream release 0.12.0 - Some minor spec file cleanups - Enable building on arm * Thu Sep 6 2012 Soren Sandmann - 0.11.3-1 - BuildRequire pyparsing * Thu Sep 6 2012 Soren Sandmann - 0.11.3-1 - Add capability patches - Add capability patches to the included copy of spice-protocol Please see the comment above Patch6 and Patch7 regarding this situation. * Thu Sep 6 2012 Soren Sandmann - 0.11.3-1 - Update to 0.11.3 and drop upstreamed patches - BuildRequire spice-protocol 0.12.1 * Sat Jul 21 2012 Fedora Release Engineering - 0.10.1-6 - Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild * Mon May 14 2012 Alon Levy - Fix mjpeg memory leak and bad behavior. - Add usbredir to list of channels for security purposes. (#819484) * Sun May 13 2012 Alon Levy - Add double free fix. (#808936) * Tue Apr 24 2012 Alon Levy - Add 32 bit fixes from git master. (#815717) * Tue Feb 28 2012 Fedora Release Engineering - 0.10.1-2 - Rebuilt for c++ ABI breakage * Mon Jan 23 2012 Hans de Goede - 0.10.1-1 - New upstream release 0.10.1 * Sat Jan 14 2012 Fedora Release Engineering - 0.10.0-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild * Thu Nov 10 2011 Alon Levy - 0.10.0-1 - New upstream release 0.10.0 - support spice-server.i686 * Wed Sep 28 2011 Marc-André Lureau - 0.9.1-2 - Provides spice-xpi-client alternative in spice-client * Thu Aug 25 2011 Hans de Goede - 0.9.1-1 - New upstream release 0.9.1 * Mon Jul 25 2011 Marc-André Lureau - 0.9.0-1 - New upstream release 0.9.0 * Wed Apr 20 2011 Hans de Goede - 0.8.1-1 - New upstream release 0.8.1 * Fri Mar 11 2011 Hans de Goede - 0.8.0-2 - Fix being unable to send ctrl+alt+key when release mouse is bound to ctrl+alt (which can happen when used from RHEV-M) * Tue Mar 1 2011 Hans de Goede - 0.8.0-1 - New upstream release 0.8.0 * Fri Feb 11 2011 Hans de Goede - 0.7.3-1 - New upstream release 0.7.3 * Wed Feb 09 2011 Fedora Release Engineering - 0.7.2-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild * Wed Jan 19 2011 Hans de Goede - 0.7.2-1 - New upstream release 0.7.2 * Fri Dec 17 2010 Hans de Goede - 0.7.1-1 - New upstream release 0.7.1 - Drop all patches (all upstreamed) - Enable smartcard (CAC) support * Wed Nov 17 2010 Hans de Goede - 0.6.3-4 - Fix the info layer not showing when used through the XPI - Do not let the connection gui flash by when a hostname has been specified on the cmdline - Fix spice client locking up when dealing with XIM input (#654265) - Fix modifier keys getting stuck (#655048) - Fix spice client crashing when dealing with XIM ibus input (#655836) - Fix spice client only showing a white screen in full screen mode * Sat Nov 6 2010 Hans de Goede - 0.6.3-3 - Log to ~/.spicec/cegui.log rather then to CEGUI.log in the cwd, this fixes spicec from aborting when run in a non writable dir (#650253) * Fri Nov 5 2010 Hans de Goede - 0.6.3-2 - Various bugfixes from upstream git: - Make spicec work together with the Firefox XPI for RHEV-M - Make sure the spicec window gets properly raised when first shown * Mon Oct 18 2010 Hans de Goede - 0.6.3-1 - Update to 0.6.3 - Enable GUI * Thu Sep 30 2010 Gerd Hoffmann - 0.6.1-1 - Update to 0.6.1. * Tue Aug 31 2010 Alexander Larsson - 0.6.0-1 - Update to 0.6.0 (stable release) * Tue Jul 20 2010 Alexander Larsson - 0.5.3-1 - Update to 0.5.3 * Tue Jul 13 2010 Gerd Hoffmann - 0.5.2-4 - Quote %% in changelog to avoid macro expansion. * Mon Jul 12 2010 Gerd Hoffmann - 0.5.2-3 - %%configure handles CFLAGS automatically, no need to fiddle with %%{optflags} manually. * Mon Jul 12 2010 Gerd Hoffmann - 0.5.2-2 - Fix license: LGPL. - Cleanup specfile, drop bits not needed any more with recent rpm versions (F13+). - Use optflags as-is. - * Fri Jul 9 2010 Gerd Hoffmann - 0.5.2-1 - initial package.