diff --git a/.gitignore b/.gitignore index 5105f14..303a3bf 100644 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,5 @@ /spice-vdagent-*.tar.bz2 /spice-vdagent-0.20.0.tar.bz2.sig /victortoso-E37A484F.keyring +/jrope-7FDAB9AF.keyring +/spice-vdagent-0.21.0.tar.bz2.sig diff --git a/0001-vdagentd-work-around-GLib-s-fork-issues.patch b/0001-vdagentd-work-around-GLib-s-fork-issues.patch deleted file mode 100644 index 2a59c19..0000000 --- a/0001-vdagentd-work-around-GLib-s-fork-issues.patch +++ /dev/null @@ -1,103 +0,0 @@ -From 9b8c0ebb9fb573e6ce3c5416371509f416503d0c Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Jakub=20Jank=C5=AF?= -Date: Fri, 20 Mar 2020 10:36:03 +0100 -Subject: [PATCH 1/2] vdagentd: work around GLib's fork issues -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -Creating threads is not compatible with forking as only the thread -that calls fork() is inherited. - -Handlers registered with g_unix_signal_add() create a thread so -move these calls after fork. - -Also call g_socket_service_start() after fork to avoid creation of -new threads before it is necessary. - -Fixes: https://gitlab.freedesktop.org/spice/linux/vd_agent/issues/18 - -Also see: https://gitlab.gnome.org/GNOME/glib/issues/2073 - -Signed-off-by: Jakub Janků -Acked-by: Frediano Ziglio ---- - src/udscs.c | 6 ++++++ - src/udscs.h | 2 ++ - src/vdagentd/vdagentd.c | 9 +++++---- - 3 files changed, 13 insertions(+), 4 deletions(-) - -diff --git a/src/udscs.c b/src/udscs.c -index 4de75f8..7c99eed 100644 ---- a/src/udscs.c -+++ b/src/udscs.c -@@ -186,6 +186,7 @@ struct udscs_server *udscs_server_new( - server->read_callback = read_callback; - server->error_cb = error_cb; - server->service = g_socket_service_new(); -+ g_socket_service_stop(server->service); - - g_signal_connect(server->service, "incoming", - G_CALLBACK(udscs_server_accept_cb), server); -@@ -223,6 +224,11 @@ void udscs_server_listen_to_address(struct udscs_server *server, - g_object_unref(sock_addr); - } - -+void udscs_server_start(struct udscs_server *server) -+{ -+ g_socket_service_start(server->service); -+} -+ - void udscs_server_destroy_connection(struct udscs_server *server, - UdscsConnection *conn) - { -diff --git a/src/udscs.h b/src/udscs.h -index 45ebd3f..4f7ea36 100644 ---- a/src/udscs.h -+++ b/src/udscs.h -@@ -98,6 +98,8 @@ void udscs_server_listen_to_address(struct udscs_server *server, - const gchar *addr, - GError **err); - -+void udscs_server_start(struct udscs_server *server); -+ - void udscs_server_destroy_connection(struct udscs_server *server, - UdscsConnection *conn); - -diff --git a/src/vdagentd/vdagentd.c b/src/vdagentd/vdagentd.c -index cfd0a51..1b63ec8 100644 ---- a/src/vdagentd/vdagentd.c -+++ b/src/vdagentd/vdagentd.c -@@ -1184,10 +1184,6 @@ int main(int argc, char *argv[]) - uinput_device = g_strdup(DEFAULT_UINPUT_DEVICE); - } - -- g_unix_signal_add(SIGINT, signal_handler, NULL); -- g_unix_signal_add(SIGHUP, signal_handler, NULL); -- g_unix_signal_add(SIGTERM, signal_handler, NULL); -- - openlog("spice-vdagentd", do_daemonize ? 0 : LOG_PERROR, LOG_USER); - - /* Setup communication with vdagent process(es) */ -@@ -1240,6 +1236,10 @@ int main(int argc, char *argv[]) - } - #endif - -+ g_unix_signal_add(SIGINT, signal_handler, NULL); -+ g_unix_signal_add(SIGHUP, signal_handler, NULL); -+ g_unix_signal_add(SIGTERM, signal_handler, NULL); -+ - if (want_session_info) - session_info = session_info_create(debug); - if (session_info) { -@@ -1252,6 +1252,7 @@ int main(int argc, char *argv[]) - - active_xfers = g_hash_table_new(g_direct_hash, g_direct_equal); - -+ udscs_server_start(server); - loop = g_main_loop_new(NULL, FALSE); - g_main_loop_run(loop); - --- -2.25.1 - diff --git a/0002-vdagentd-init-static-uinput-before-fork.patch b/0002-vdagentd-init-static-uinput-before-fork.patch deleted file mode 100644 index 2b5aaf4..0000000 --- a/0002-vdagentd-init-static-uinput-before-fork.patch +++ /dev/null @@ -1,44 +0,0 @@ -From 7b0435ef66af088c1a1be20b6bc6b0fcb76e4e1a Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Jakub=20Jank=C5=AF?= -Date: Fri, 20 Mar 2020 17:18:32 +0100 -Subject: [PATCH 2/2] vdagentd: init static uinput before fork -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -Otherwise the caller doesn't know that the init failed -because we're returning 0 in the parent and 1 in child. - -Signed-off-by: Jakub Janků -Acked-by: Frediano Ziglio ---- - src/vdagentd/vdagentd.c | 6 +++--- - 1 file changed, 3 insertions(+), 3 deletions(-) - -diff --git a/src/vdagentd/vdagentd.c b/src/vdagentd/vdagentd.c -index 1b63ec8..753c9bf 100644 ---- a/src/vdagentd/vdagentd.c -+++ b/src/vdagentd/vdagentd.c -@@ -1224,9 +1224,6 @@ int main(int argc, char *argv[]) - } - } - -- if (do_daemonize) -- daemonize(); -- - #ifdef WITH_STATIC_UINPUT - uinput = vdagentd_uinput_create(uinput_device, 1024, 768, NULL, 0, - debug > 1, uinput_fake); -@@ -1236,6 +1233,9 @@ int main(int argc, char *argv[]) - } - #endif - -+ if (do_daemonize) -+ daemonize(); -+ - g_unix_signal_add(SIGINT, signal_handler, NULL); - g_unix_signal_add(SIGHUP, signal_handler, NULL); - g_unix_signal_add(SIGTERM, signal_handler, NULL); --- -2.25.1 - diff --git a/sources b/sources index 2bf468a..44c4bc0 100644 --- a/sources +++ b/sources @@ -1,3 +1,3 @@ -SHA512 (spice-vdagent-0.20.0.tar.bz2) = a6288e056645c071834f9ce5800669cb64e0f86a5efeb8eec61ac1e11f1fd56f7da8ea19b28a94c88741d794a0290fac9bcf74d45bcef271c2c5abfb2573a8e1 -SHA512 (spice-vdagent-0.20.0.tar.bz2.sig) = feffdf727433bc7ca46bf8127de019df157620d39b095f179ac0c9dd25fb9ec20eeaf7cbc4aae7707e5379dea7f4ef464be18929551c2b90dd5711155668f28e -SHA512 (victortoso-E37A484F.keyring) = 091755da8a358c8c8ebd3b5443b4b5eb3c260afed943454c085d48c973de6a42763547c321c64e4da5c1b2983ad0c5146aaeddeb1d54ef414f7e6a530a3bf14a +SHA512 (jrope-7FDAB9AF.keyring) = 5d12e4eca58ac9895c6e4d5df6a17cdba583994d7cb628dbf669bbb6aa19c31621ebb0bd555780bdd5553d062ba658243a47ea470fdb2ae16e1f0859499e27a0 +SHA512 (spice-vdagent-0.21.0.tar.bz2) = 1ff1a89e75301b1c2c89f26ba4bce8d4df29bbff6387ade128ce847ca30162a2bc731c70c10a8d129518e64bbca6b8271fd11ff3e340899182a65a5295051bff +SHA512 (spice-vdagent-0.21.0.tar.bz2.sig) = 877a6ff30c01bcc881dc609b5f96cb0cbd9f4b158bc37aceb09479cc02a88775695fc9399428fa68db73e6ea7e44a9f6f04fedbd1d7d731d19b1cbf9216ac7a6 diff --git a/spice-vdagent.spec b/spice-vdagent.spec index 10e1979..2ba7eb9 100644 --- a/spice-vdagent.spec +++ b/spice-vdagent.spec @@ -1,16 +1,16 @@ Name: spice-vdagent -Version: 0.20.0 -Release: 4%{?dist} +Version: 0.21.0 +Release: 1%{?dist} Summary: Agent for Spice guests License: GPLv3+ URL: https://spice-space.org/ Source0: https://spice-space.org/download/releases/%{name}-%{version}.tar.bz2 Source1: https://spice-space.org/download/releases/%{name}-%{version}.tar.bz2.sig -Source2: victortoso-E37A484F.keyring +Source2: jrope-7FDAB9AF.keyring BuildRequires: make BuildRequires: systemd-devel BuildRequires: glib2-devel >= 2.50 -BuildRequires: spice-protocol >= 0.14.1 +BuildRequires: spice-protocol >= 0.14.3 BuildRequires: libpciaccess-devel libXrandr-devel libXinerama-devel BuildRequires: libXfixes-devel systemd desktop-file-utils libtool BuildRequires: alsa-lib-devel dbus-devel libdrm-devel @@ -19,9 +19,6 @@ BuildRequires: automake autoconf BuildRequires: gnupg2 %{?systemd_requires} -Patch0001: 0001-vdagentd-work-around-GLib-s-fork-issues.patch -Patch0002: 0002-vdagentd-init-static-uinput-before-fork.patch - %description Spice agent for Linux guests offering the following features: @@ -77,6 +74,9 @@ make install DESTDIR=$RPM_BUILD_ROOT V=2 %changelog +* Mon Feb 8 2021 Victor Toso 0.21.0-1 +- Update to spice-vdagent 0.21.0 + * Wed Jan 27 2021 Fedora Release Engineering - 0.20.0-4 - Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild