From patchwork Sat Aug 7 13:43:36 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Adolf Belka X-Patchwork-Id: 4618 Return-Path: Received: from mail01.ipfire.org (mail01.haj.ipfire.org [172.28.1.202]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-384) server-digest SHA384 client-signature ECDSA (P-384) client-digest SHA384) (Client CN "mail01.haj.ipfire.org", Issuer "R3" (verified OK)) by web04.haj.ipfire.org (Postfix) with ESMTPS id 4Ghk8P5Cdkz3xGN for ; Sat, 7 Aug 2021 13:43:49 +0000 (UTC) Received: from mail02.haj.ipfire.org (mail02.haj.ipfire.org [172.28.1.201]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-384) server-digest SHA384 client-signature ECDSA (P-384) client-digest SHA384) (Client CN "mail02.haj.ipfire.org", Issuer "R3" (verified OK)) by mail01.ipfire.org (Postfix) with ESMTPS id 4Ghk8M0nWRz28M; Sat, 7 Aug 2021 13:43:47 +0000 (UTC) Received: from mail02.haj.ipfire.org (localhost [127.0.0.1]) by mail02.haj.ipfire.org (Postfix) with ESMTP id 4Ghk8L3LnPz2yDk; Sat, 7 Aug 2021 13:43:46 +0000 (UTC) Received: from mail01.ipfire.org (mail01.haj.ipfire.org [172.28.1.202]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-384) server-digest SHA384 client-signature ECDSA (P-384) client-digest SHA384) (Client CN "mail01.haj.ipfire.org", Issuer "R3" (verified OK)) by mail02.haj.ipfire.org (Postfix) with ESMTPS id 4Ghk8K4b6rz2xLb for ; Sat, 7 Aug 2021 13:43:45 +0000 (UTC) Received: from [127.0.0.1] (localhost [127.0.0.1]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-384) server-digest SHA384) (No client certificate requested) by mail01.ipfire.org (Postfix) with ESMTPSA id 4Ghk8J5fLYz169; Sat, 7 Aug 2021 13:43:44 +0000 (UTC) DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; d=ipfire.org; s=202003ed25519; t=1628343824; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version: content-transfer-encoding:content-transfer-encoding; bh=hJaI+iOMJUH1yhhwgizMgQlfcqOwRkcQn/dDixySQx0=; b=U1OO5hGiJ7t6zMgriMFMDZT3pm9bU51aAPQpX6DuEtVylRCd104pn2ecBaGNK8jbbD5cKC nGGHx7SMQt+0VcCg== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ipfire.org; s=202003rsa; t=1628343824; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version: content-transfer-encoding:content-transfer-encoding; bh=hJaI+iOMJUH1yhhwgizMgQlfcqOwRkcQn/dDixySQx0=; b=kdcG+JSGdjuxg6wwK/Yt10O/oytZouS79aRqbXNJi1A4KCI/nmC+szpgxJtlpbPMvoD7Hv pA1le401E2uAJpPuaIFdNaB+2nybYJSEGwsuTh9bz2stC1Uxjk8ftjSD8baJEcCZffNztQ RlHEnja2HTa6hfd13cRoVNodP7JgDtJJDt+NWVSi46x5FN1fCeL6Im/9suf6a6QDmkInNb W+WS+IyTyJIiIshWEe7sCF1ZmQ+9V6I2/1w8nFMn3n9BPwNlD9DmNl0F584pt0gSzg3MJE 0aLVW74Di7WvOKb8+RH1+8gUF2eZprnvfFZeVPlDWRdp0OeF2QOXNsWPkyIYzw== From: Adolf Belka To: development@lists.ipfire.org Subject: [PATCH 1/2] spice: Update version to 0.15.0 Date: Sat, 7 Aug 2021 15:43:36 +0200 Message-Id: <20210807134337.2807376-1-adolf.belka@ipfire.org> MIME-Version: 1.0 X-BeenThere: development@lists.ipfire.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: IPFire development talk List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: development-bounces@lists.ipfire.org Sender: "Development" - Update from 0.14.0 to 0.15.0 - Update rootfile - Version 0.15.0 of spice requires version 0.14.3 or higher of spice-protocol - Changelog Major Changes in 0.15: This is the first release in the new 0.15.x stable series. This release should be ready for production use. * Minor updates to CI * Some compatibility with OpenSSL * Change the behavior of handle_dev_start ignoring multiple start requests * Ignore multiple calls to handle_dev_stop * Pick up newer spice-common to fix a buffer overflow issue Major Changes in 0.14.91: **IMPORTANT** 0.14.91 is the first release candidate for the stable 0.15.x series. While some bugs might still be present, it should be reasonably stable. If you are looking for stability for daily use, please keep using the latest 0.14.x release. * Support UNIX abstract sockets * Fix some potential thread race condition in RedClient * Many cleanups in the code * Improve migration test script * Update in protocol documentation * Improve Meson build * Removed CELT support * Update CI * Removed QXLWorker definition, it was deprecated 6 years ago * Fix some compatibility with MacOS * Fix some compatibility with Windows * Move the project to C++ * Some fixes for SASL dealing with WebDAV * Fix minor Coverity reports * Add Doxygen support, manually built with "make doxy" * Support more mouse buttons (up to 16 buttons) * CVE-2020-14355 multiple buffer overflow vulnerabilities in QUIC decoding code Major Changes in 0.14.3: Main changes are WebSocket and support for Windows. * Add support for WebSocket, this will allow to use spice-html5 without proxy * Support Windows, now Qemu Windows can be build enabling Spice * Fix some alignment problem * Converted some documentation to Asciidoc format to make easier to update, updated some * Minor compatibility fix for PPC64EL and ARMHF * Minor fixes for big endian machines like MIPS * Avoid some crashes with some buggy guest drivers, simply ignore the invalid request * Fix for old OpenSSL versions * Minor fix for Windows clients and brushes, fixed an issue with Photoshop under Windows 7 * Add ability to query video-codecs * Small use-after-free fix * Fix for debugging recording/replaying using QUIC images * Fix a regression where spice reported no monitors to the client * Fix DoS in spicevmc if WebDAV used * Updated and improved test migration script * Some minor fixes to smartcard support * Avoid possible disconnection using proxies using a in-flow keepalive mechanism Major Changes in 0.14.2: Main changes are support for Meson build and graphic device info messages allowing to better support multi-monitor configurations. * CVE-2019-3813: fix off-by-one error in group/slot boundary check * support H265 in stream-channel * add support for building with meson/ninja * minor tests fixes improving CI * set char device state for smartcard, allowing Qemu optimization * improve red-parse-qxl.c interface making it more consistent * add some instrumentation for streaming device * QXL interface: add a function to identify monitors in the guest (spice_qxl_set_device_info) * add support for GraphicsDeviceInfo messages * video-stream: prevent crash on stream reattach * make channel client callbacks virtual functions * bumped minimum required glib version to 2.38 * attempt to have a reliable led state for keyboard modifiers Major Changes in 0.14.1: The main change in this release is the addition of a new protocol extension in order to support streaming the remote display as a video stream rather than going through the QXL protocol. Together with spice-streaming-agent, and/or with more work on the qemu/spice-server side, this should allow streaming of 3D accelerated VMs in the future. At this point, this part of spice-server is still a work in progress (multi-monitor support and various features are missing). * add new org.spice-space.stream.0 channel used for passing an encoded video stream from the guest to the client * add support for TCP_CORK to reduce the amount of packets that we send * fix CVE-2018-10873 * fix cursor related migration crash * fix regression causing sound recording to be muted after client disconnection/reconnection (introduced in 0.13.90) * fix regression in corner cases where images could be sent uncompressed when they used to be compressed with QUIC * disable TLS 1.0 support * CELT 0.5.1 support is now disabled by default. If celt051-devel is installed at build-time, --enable-celt051/--disable-celt051 must be explicitly specified * drop support for unsupported OpenSSL version. OpenSSL 1.0.0 or newer is now required * bumped minimum required glib version to 2.32 * endianness fixes * (small) leak fixes * usual round of code cleanups * not directly related to this release, but the upstream git repository is now hosted on gitlab.freedesktop.org Signed-off-by: Adolf Belka --- config/rootfiles/packages/spice | 3 +-- lfs/spice | 6 +++--- 2 files changed, 4 insertions(+), 5 deletions(-) diff --git a/config/rootfiles/packages/spice b/config/rootfiles/packages/spice index 9ee1f9179..b56a90329 100644 --- a/config/rootfiles/packages/spice +++ b/config/rootfiles/packages/spice @@ -2,7 +2,6 @@ #usr/include/spice-server/spice-audio.h #usr/include/spice-server/spice-char.h #usr/include/spice-server/spice-core.h -#usr/include/spice-server/spice-experimental.h #usr/include/spice-server/spice-input.h #usr/include/spice-server/spice-migration.h #usr/include/spice-server/spice-qxl.h @@ -13,5 +12,5 @@ #usr/lib/libspice-server.la #usr/lib/libspice-server.so usr/lib/libspice-server.so.1 -usr/lib/libspice-server.so.1.12.4 +usr/lib/libspice-server.so.1.14.1 #usr/lib/pkgconfig/spice-server.pc diff --git a/lfs/spice b/lfs/spice index d1f56e708..72b132ebd 100644 --- a/lfs/spice +++ b/lfs/spice @@ -24,7 +24,7 @@ include Config -VER = 0.14.0 +VER = 0.15.0 THISAPP = spice-$(VER) DL_FILE = $(THISAPP).tar.bz2 @@ -32,7 +32,7 @@ DL_FROM = $(URL_IPFIRE) DIR_APP = $(DIR_SRC)/$(THISAPP) TARGET = $(DIR_INFO)/$(THISAPP) PROG = spice -PAK_VER = 5 +PAK_VER = 6 DEPS = opus @@ -44,7 +44,7 @@ objects = $(DL_FILE) $(DL_FILE) = $(DL_FROM)/$(DL_FILE) -$(DL_FILE)_MD5 = 6622aa7dfb5cd026a4d0d7e659216d26 +$(DL_FILE)_MD5 = 840c5284ebc78c15fc7c3a146931bc01 install : $(TARGET) From patchwork Sat Aug 7 13:43:37 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Adolf Belka X-Patchwork-Id: 4619 Return-Path: Received: from mail01.ipfire.org (mail01.haj.ipfire.org [172.28.1.202]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-384) client-signature ECDSA (P-384)) (Client CN "mail01.haj.ipfire.org", Issuer "R3" (verified OK)) by web04.haj.ipfire.org (Postfix) with ESMTPS id 4Ghk8j1Jzbz3xGN for ; Sat, 7 Aug 2021 13:44:05 +0000 (UTC) Received: from mail02.haj.ipfire.org (mail02.haj.ipfire.org [172.28.1.201]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-384) client-signature ECDSA (P-384)) (Client CN "mail02.haj.ipfire.org", Issuer "R3" (verified OK)) by mail01.ipfire.org (Postfix) with ESMTPS id 4Ghk8h4cT2z17x; Sat, 7 Aug 2021 13:44:04 +0000 (UTC) Received: from mail02.haj.ipfire.org (localhost [127.0.0.1]) by mail02.haj.ipfire.org (Postfix) with ESMTP id 4Ghk8h46KVz2yS0; Sat, 7 Aug 2021 13:44:04 +0000 (UTC) Received: from mail01.ipfire.org (mail01.haj.ipfire.org [172.28.1.202]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-384) client-signature ECDSA (P-384)) (Client CN "mail01.haj.ipfire.org", Issuer "R3" (verified OK)) by mail02.haj.ipfire.org (Postfix) with ESMTPS id 4Ghk8g3Qwvz2xYh for ; Sat, 7 Aug 2021 13:44:03 +0000 (UTC) Received: from [127.0.0.1] (localhost [127.0.0.1]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-384) server-digest SHA384) (No client certificate requested) by mail01.ipfire.org (Postfix) with ESMTPSA id 4Ghk8f6s64z169; Sat, 7 Aug 2021 13:44:02 +0000 (UTC) DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; d=ipfire.org; s=202003ed25519; t=1628343843; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=FZvqr/SwhVPNjlvUHBIpCWEtoND42sYFKPz2oDC/F7M=; b=tB0USJVzQiNdr86xIK4QwlDqB4g6OWlm/dc6/5p1bBZXMfWrI4mhG747peNvy07H8ndGgd llbXcDWQGgYRspCA== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ipfire.org; s=202003rsa; t=1628343843; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=FZvqr/SwhVPNjlvUHBIpCWEtoND42sYFKPz2oDC/F7M=; b=wlTG5v/uPp1u3cRWrc6fLL6zAx7Py7ag+NU+m+E3mIeXZqvLg2NTHABq/ShxtkfEXRa+Kf UxNOw+asSrHnwh6KUpbTOuKHLe5gGJ8iqDJrtrPL5DTFcSjT9rxeacHu1qRe9t60jt1GlB 2v634rgkUtzS2npXrFHwlzgegC1tkgMvBnkVjtzM0cvV4csL8BnZXJmzIKR3xD9N2KqMV3 emXf2BYh/0KnSQ6armu2oKYUNnUHV6IqPPqbijfQ+VK1KNX9M8+W0zqrNG6FpGqzQY5gRp lcgkWD0dqAQF7llnGgMOmFn1n3sUqh9YNwnJW8DMIM5VO5kiFPTRWKlmT1oNRA== From: Adolf Belka To: development@lists.ipfire.org Subject: [PATCH 2/2] spice-protocol: Update to 0.14.3 and enable build without python2 Date: Sat, 7 Aug 2021 15:43:37 +0200 Message-Id: <20210807134337.2807376-2-adolf.belka@ipfire.org> In-Reply-To: <20210807134337.2807376-1-adolf.belka@ipfire.org> References: <20210807134337.2807376-1-adolf.belka@ipfire.org> MIME-Version: 1.0 X-BeenThere: development@lists.ipfire.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: IPFire development talk List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: development-bounces@lists.ipfire.org Sender: "Development" - Update from 0.12.13 to 0.14.3 - Update rootfile - Remove automake py-compile line from lfs. This only works with python2 Not clear why this line was put into the lfs. Searched the documentation of spice and qemu and could not find any reference to needing any of the python modules in spice to be installed either as modules or compiled in. The only references found in general searches were to modules such as python-virtinst, python-spice-client-gtk or python-websockify, none of which are in the python modules in spice. - Removing the automake py-compile line from the lfs enables spice-protocol, spice and qemu to build without python2 being present. Signed-off-by: Adolf Belka --- config/rootfiles/common/spice-protocol | 6 +----- lfs/spice-protocol | 17 ++++++++--------- 2 files changed, 9 insertions(+), 14 deletions(-) diff --git a/config/rootfiles/common/spice-protocol b/config/rootfiles/common/spice-protocol index 26cdc2102..d7d6e7470 100644 --- a/config/rootfiles/common/spice-protocol +++ b/config/rootfiles/common/spice-protocol @@ -1,11 +1,8 @@ #usr/include/spice-1 #usr/include/spice-1/spice #usr/include/spice-1/spice/barrier.h -#usr/include/spice-1/spice/controller_prot.h #usr/include/spice-1/spice/end-packed.h #usr/include/spice-1/spice/enums.h -#usr/include/spice-1/spice/error_codes.h -#usr/include/spice-1/spice/foreign_menu_prot.h #usr/include/spice-1/spice/ipc_ring.h #usr/include/spice-1/spice/macros.h #usr/include/spice-1/spice/protocol.h @@ -13,8 +10,7 @@ #usr/include/spice-1/spice/qxl_windows.h #usr/include/spice-1/spice/start-packed.h #usr/include/spice-1/spice/stats.h +#usr/include/spice-1/spice/stream-device.h #usr/include/spice-1/spice/types.h #usr/include/spice-1/spice/vd_agent.h -#usr/include/spice-1/spice/vdi_dev.h -#usr/share/pkgconfig #usr/share/pkgconfig/spice-protocol.pc diff --git a/lfs/spice-protocol b/lfs/spice-protocol index 00f2e57b3..a654d2be4 100644 --- a/lfs/spice-protocol +++ b/lfs/spice-protocol @@ -24,15 +24,15 @@ include Config -VER = 0.12.13 +VER = 0.14.3 THISAPP = spice-protocol-$(VER) -DL_FILE = $(THISAPP).tar.bz2 +DL_FILE = $(THISAPP).tar.xz DL_FROM = $(URL_IPFIRE) DIR_APP = $(DIR_SRC)/$(THISAPP) TARGET = $(DIR_INFO)/$(THISAPP) PROG = spice-protocol -PAK_VER = 3 +PAK_VER = 4 DEPS = @@ -44,7 +44,7 @@ objects = $(DL_FILE) $(DL_FILE) = $(DL_FROM)/$(DL_FILE) -$(DL_FILE)_MD5 = 50a1d951d1fa96d1478ff0cc7f3b1442 +$(DL_FILE)_MD5 = 950e08044497ca9cf64e368cb3ceb395 install : $(TARGET) @@ -76,10 +76,9 @@ $(subst %,%_MD5,$(objects)) : $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects)) @$(PREBUILD) - @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar jxf $(DIR_DL)/$(DL_FILE) - cd $(DIR_APP) && ./configure --prefix=/usr - cd $(DIR_APP) && make $(MAKETUNING) $(EXTRA_MAKE) - cd $(DIR_APP) && make install - /usr/share/automake-*/py-compile /usr/lib/spice-protocol/python_modules/* + @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar axf $(DIR_DL)/$(DL_FILE) + cd $(DIR_APP) && meson --prefix=/usr builddir/ + cd $(DIR_APP) && ninja -C builddir/ + cd $(DIR_APP) && ninja -C builddir/ install @rm -rf $(DIR_APP) @$(POSTBUILD)