diff options
author | Mart Raudsepp <leio@gentoo.org> | 2020-07-29 14:11:14 +0300 |
---|---|---|
committer | Mart Raudsepp <leio@gentoo.org> | 2020-07-29 14:23:25 +0300 |
commit | 91d61823603e5be3953d15dfefec3ef791a09b46 (patch) | |
tree | 6ab21ef2eeedc5ac63555fb84b0e3b083687723e /gnome-base/gnome-keyring | |
parent | gnome-base/dconf: remove old (diff) | |
download | gentoo-91d61823603e5be3953d15dfefec3ef791a09b46.tar.gz gentoo-91d61823603e5be3953d15dfefec3ef791a09b46.tar.bz2 gentoo-91d61823603e5be3953d15dfefec3ef791a09b46.zip |
gnome-base/gnome-keyring: remove old
Package-Manager: Portage-2.3.84, Repoman-2.3.20
Signed-off-by: Mart Raudsepp <leio@gentoo.org>
Diffstat (limited to 'gnome-base/gnome-keyring')
-rw-r--r-- | gnome-base/gnome-keyring/Manifest | 1 | ||||
-rw-r--r-- | gnome-base/gnome-keyring/files/3.31.91-fix-musl.patch | 27 | ||||
-rw-r--r-- | gnome-base/gnome-keyring/files/3.31.91-race-fix1.patch | 37 | ||||
-rw-r--r-- | gnome-base/gnome-keyring/files/3.31.91-race-fix2.patch | 104 | ||||
-rw-r--r-- | gnome-base/gnome-keyring/files/3.31.91-ssh-tests-fix.patch | 112 | ||||
-rw-r--r-- | gnome-base/gnome-keyring/gnome-keyring-3.31.91-r1.ebuild | 85 |
6 files changed, 0 insertions, 366 deletions
diff --git a/gnome-base/gnome-keyring/Manifest b/gnome-base/gnome-keyring/Manifest index db12d91cf0ba..5a0f25e3133a 100644 --- a/gnome-base/gnome-keyring/Manifest +++ b/gnome-base/gnome-keyring/Manifest @@ -1,3 +1,2 @@ -DIST gnome-keyring-3.31.91.tar.xz 1365052 BLAKE2B fed6ac7bb5a509e268180d047cd5df1564d5a90672f5240fa98773f43d9ca7eb63c598d81c4a9de8e988ee5886679bceeb4be1c43acce876680aeb3df4385856 SHA512 c66ad13fd84764f01e75de2d6142ecb42954d6111f86738c27e7b5b94e702be2af5af7f83ba4e4b9aae58cfa04f3973e272c8177179d1f8a54f63c037aea0210 DIST gnome-keyring-3.34.0.tar.xz 1333768 BLAKE2B 0237eb7ac0b7146d096c58cac4c788a92680f1a6dd321949f295935bde206263e5ee1762c9d393dfbc10322d018e835333c823d11e8af5dc01434555886626dd SHA512 09f84bdf5ea415a55baf6a57dba2889cdf592005d273335029107ea3f83152447b3263cd190810930aae41af22dd508e765e649da3c8a9afa127db1d298bb72a DIST gnome-keyring-3.36.0.tar.xz 1345360 BLAKE2B f37454e0e42dcc1fe7e29e95dcb8ca7bc2db10e6b262b796421b4fd38b87fe9128a4c2f129d28d14716a2f9a7d60061d4b345e9564e73a0587faf24a7d2b1194 SHA512 e5aed36ad109cbd2dcb534843f8565829366acc955cadc6e9bbe87ebbb6a8a907211aa3a42f7f26148ac69726af2f9238965707d1259319435bd20aa8c4859ed diff --git a/gnome-base/gnome-keyring/files/3.31.91-fix-musl.patch b/gnome-base/gnome-keyring/files/3.31.91-fix-musl.patch deleted file mode 100644 index 85aebcd30012..000000000000 --- a/gnome-base/gnome-keyring/files/3.31.91-fix-musl.patch +++ /dev/null @@ -1,27 +0,0 @@ -From 7a8b7d2ebfbb831840e6d58dbb1109f4c31d6ba4 Mon Sep 17 00:00:00 2001 -From: Daiki Ueno <dueno@src.gnome.org> -Date: Fri, 10 May 2019 15:47:33 +0200 -Subject: [PATCH] rpc-layer: fix build with musl-libc - -The recent POSIX suggests to include <sys/select.h> for select(). - -Reported by Anthony G. Basile. ---- - pkcs11/rpc-layer/gkm-rpc-daemon-standalone.c | 1 + - 1 file changed, 1 insertion(+) - -diff --git a/pkcs11/rpc-layer/gkm-rpc-daemon-standalone.c b/pkcs11/rpc-layer/gkm-rpc-daemon-standalone.c -index 5024e1e1..b3fb6707 100644 ---- a/pkcs11/rpc-layer/gkm-rpc-daemon-standalone.c -+++ b/pkcs11/rpc-layer/gkm-rpc-daemon-standalone.c -@@ -34,6 +34,7 @@ - - #include <dlfcn.h> - #include <pthread.h> -+#include <sys/select.h> - - #define SOCKET_PATH "/tmp/gkm-rpc-daemon.sock" - --- -2.20.1 - diff --git a/gnome-base/gnome-keyring/files/3.31.91-race-fix1.patch b/gnome-base/gnome-keyring/files/3.31.91-race-fix1.patch deleted file mode 100644 index d965fd712770..000000000000 --- a/gnome-base/gnome-keyring/files/3.31.91-race-fix1.patch +++ /dev/null @@ -1,37 +0,0 @@ -From 8a948b3ac17f7d1b0ff31b0cf22e655054eb5c6b Mon Sep 17 00:00:00 2001 -From: Benjamin Berg <bberg@redhat.com> -Date: Tue, 14 May 2019 17:36:56 +0200 -Subject: [PATCH 1/2] dbus-environment: Log Setenv call failure after - initialization - -When the GNOME session is already initialized at the point that Setenv -is called, then an error is returned. Hidding this error makes it hard -to understand why the environment was not setup if things failed. ---- - daemon/dbus/gkd-dbus-environment.c | 6 +----- - 1 file changed, 1 insertion(+), 5 deletions(-) - -diff --git a/daemon/dbus/gkd-dbus-environment.c b/daemon/dbus/gkd-dbus-environment.c -index 93e2b878..051de953 100644 ---- a/daemon/dbus/gkd-dbus-environment.c -+++ b/daemon/dbus/gkd-dbus-environment.c -@@ -49,15 +49,11 @@ on_setenv_reply (GObject *source, - res = g_dbus_connection_call_finish (G_DBUS_CONNECTION (source), result, &error); - - if (error != NULL) { -- gchar *dbus_error; -- dbus_error = g_dbus_error_get_remote_error (error); -- if (g_error_matches (error, G_DBUS_ERROR, G_DBUS_ERROR_SERVICE_UNKNOWN) || -- g_strcmp0 (dbus_error, "org.gnome.SessionManager.NotInInitialization") == 0) -+ if (g_error_matches (error, G_DBUS_ERROR, G_DBUS_ERROR_SERVICE_UNKNOWN)) - g_debug ("couldn't set environment variable in session: %s", error->message); - else - g_message ("couldn't set environment variable in session: %s", error->message); - g_error_free (error); -- g_free (dbus_error); - } - - g_clear_pointer (&res, g_variant_unref); --- -2.20.1 - diff --git a/gnome-base/gnome-keyring/files/3.31.91-race-fix2.patch b/gnome-base/gnome-keyring/files/3.31.91-race-fix2.patch deleted file mode 100644 index c51ffbef44ad..000000000000 --- a/gnome-base/gnome-keyring/files/3.31.91-race-fix2.patch +++ /dev/null @@ -1,104 +0,0 @@ -From 5d088356a9473c06564bd2cef18ca370437a17bc Mon Sep 17 00:00:00 2001 -From: Benjamin Berg <bberg@redhat.com> -Date: Tue, 14 May 2019 17:42:29 +0200 -Subject: [PATCH 2/2] dbus-environment: Make Setenv request synchronuous - -Currently there is a potential race condition where the Setenv request -races further session startup. i.e. the clients that are started with ---start on login may quit before the Setenv DBus call is delivered. This -opens a theoretical race condition where gnome-session is already past -the initialization phase when it serves the Setenv request. ---- - daemon/dbus/gkd-dbus-environment.c | 62 +++++++++++++++--------------- - 1 file changed, 30 insertions(+), 32 deletions(-) - -diff --git a/daemon/dbus/gkd-dbus-environment.c b/daemon/dbus/gkd-dbus-environment.c -index 051de953..acf398b9 100644 ---- a/daemon/dbus/gkd-dbus-environment.c -+++ b/daemon/dbus/gkd-dbus-environment.c -@@ -38,32 +38,13 @@ gkd_dbus_environment_cleanup (GDBusConnection *conn) - /* Nothing to do here */ - } - --static void --on_setenv_reply (GObject *source, -- GAsyncResult *result, -- gpointer user_data) --{ -- GError *error = NULL; -- GVariant *res; -- -- res = g_dbus_connection_call_finish (G_DBUS_CONNECTION (source), result, &error); -- -- if (error != NULL) { -- if (g_error_matches (error, G_DBUS_ERROR, G_DBUS_ERROR_SERVICE_UNKNOWN)) -- g_debug ("couldn't set environment variable in session: %s", error->message); -- else -- g_message ("couldn't set environment variable in session: %s", error->message); -- g_error_free (error); -- } -- -- g_clear_pointer (&res, g_variant_unref); --} -- - static void - setenv_request (GDBusConnection *conn, const gchar *env) - { - const gchar *value; - gchar *name; -+ GVariant *res; -+ GError *error = NULL; - - /* Find the value part of the environment variable */ - value = strchr (env, '='); -@@ -73,19 +54,36 @@ setenv_request (GDBusConnection *conn, const gchar *env) - name = g_strndup (env, value - env); - ++value; - -- g_dbus_connection_call (conn, -- SERVICE_SESSION_MANAGER, -- PATH_SESSION_MANAGER, -- IFACE_SESSION_MANAGER, -- "Setenv", -- g_variant_new ("(ss)", -- name, -- value), -- NULL, G_DBUS_CALL_FLAGS_NONE, -- -1, NULL, -- on_setenv_reply, NULL); -+ /* Note: This call does not neccessarily need to be a sync call. However -+ * under certain conditions the process will quit immediately -+ * after emitting the call. This ensures that we wait long enough -+ * for the message to be sent out (could also be done using -+ * g_dbus_connection_flush() in the exit handler when called with -+ * --start) and also ensures that gnome-session has processed the -+ * DBus message before possibly thinking that the startup of -+ * gnome-keyring has finished and continuing with forking the -+ * shell. */ -+ res = g_dbus_connection_call_sync (conn, -+ SERVICE_SESSION_MANAGER, -+ PATH_SESSION_MANAGER, -+ IFACE_SESSION_MANAGER, -+ "Setenv", -+ g_variant_new ("(ss)", -+ name, -+ value), -+ NULL, G_DBUS_CALL_FLAGS_NONE, -+ -1, NULL, &error); -+ -+ if (error != NULL) { -+ if (g_error_matches (error, G_DBUS_ERROR, G_DBUS_ERROR_SERVICE_UNKNOWN)) -+ g_debug ("couldn't set environment variable in session: %s", error->message); -+ else -+ g_message ("couldn't set environment variable in session: %s", error->message); -+ g_error_free (error); -+ } - - g_free (name); -+ g_clear_pointer (&res, g_variant_unref); - } - - static void --- -2.20.1 - diff --git a/gnome-base/gnome-keyring/files/3.31.91-ssh-tests-fix.patch b/gnome-base/gnome-keyring/files/3.31.91-ssh-tests-fix.patch deleted file mode 100644 index f5344d349fee..000000000000 --- a/gnome-base/gnome-keyring/files/3.31.91-ssh-tests-fix.patch +++ /dev/null @@ -1,112 +0,0 @@ -From 91bc9368ca2eedef0dec3f5aa81f641ced07a9b6 Mon Sep 17 00:00:00 2001 -From: Simon McVittie <smcv@debian.org> -Date: Sat, 9 Mar 2019 17:56:55 +0000 -Subject: [PATCH] test-gkd-ssh-agent-service: Avoid race condition with server - thread - -These tests create a server thread in setup() and join it in teardown(), -but there are various race conditions between them that can cause the -test to hang. These are particularly reproducible when building on a -single-CPU machine or VM, and particularly in the startup_shutdown -test (which doesn't do anything, so it runs teardown() immediately -after setup()). - -It's possible to get this preemption pattern: - - ___ Main thread ___ ___ Server thread ___ - g_thread_new() (starts) - g_cond_wait() (blocks) - ... - g_cond_signal() - (gets preempted here) - exit setup() - enter teardown() - g_main_loop_quit() - g_main_loop_run() - -which means g_main_loop_run() will never terminate, because it wasn't -running yet when the main thread told the GMainLoop to quit, and the -main thread won't tell it to quit again. - -One way to solve this would be for the server thread to signal -test->cond from an idle callback instead of directly from -server_thread(), to guarantee that the GMainLoop is already running. -However, it seems easier to reason about if we avoid GMainLoop and -iterate the main context directly. - -Signed-off-by: Simon McVittie <smcv@debian.org> -Bug-Debian: https://bugs.debian.org/909416 ---- - daemon/ssh-agent/test-gkd-ssh-agent-service.c | 23 +++++++++---------- - 1 file changed, 11 insertions(+), 12 deletions(-) - -diff --git a/daemon/ssh-agent/test-gkd-ssh-agent-service.c b/daemon/ssh-agent/test-gkd-ssh-agent-service.c -index 9a9ead99..5c7a6179 100644 ---- a/daemon/ssh-agent/test-gkd-ssh-agent-service.c -+++ b/daemon/ssh-agent/test-gkd-ssh-agent-service.c -@@ -38,7 +38,8 @@ typedef struct { - EggBuffer req; - EggBuffer resp; - GkdSshAgentService *service; -- GMainLoop *loop; -+ GMainContext *server_thread_context; -+ volatile gint server_thread_stop; - GSocketConnection *connection; - GThread *thread; - GMutex lock; -@@ -49,13 +50,9 @@ static gpointer - server_thread (gpointer data) - { - Test *test = data; -- GMainContext *context; - gboolean ret; - -- context = g_main_context_new (); -- test->loop = g_main_loop_new (context, FALSE); -- -- g_main_context_push_thread_default (context); -+ g_main_context_push_thread_default (test->server_thread_context); - - ret = gkd_ssh_agent_service_start (test->service); - g_assert_true (ret); -@@ -64,12 +61,10 @@ server_thread (gpointer data) - g_cond_signal (&test->cond); - g_mutex_unlock (&test->lock); - -- g_main_loop_run (test->loop); -+ while (g_atomic_int_get (&test->server_thread_stop) == 0) -+ g_main_context_iteration (test->server_thread_context, TRUE); - -- g_main_context_pop_thread_default (context); -- -- g_main_context_unref (context); -- g_main_loop_unref (test->loop); -+ g_main_context_pop_thread_default (test->server_thread_context); - - return NULL; - } -@@ -139,6 +134,7 @@ setup (Test *test, gconstpointer unused) - - g_mutex_init (&test->lock); - g_cond_init (&test->cond); -+ test->server_thread_context = g_main_context_new (); - - test->thread = g_thread_new ("ssh-agent", server_thread, test); - -@@ -151,9 +147,12 @@ setup (Test *test, gconstpointer unused) - static void - teardown (Test *test, gconstpointer unused) - { -- g_main_loop_quit (test->loop); -+ g_atomic_int_set (&test->server_thread_stop, 1); -+ g_main_context_wakeup (test->server_thread_context); - g_thread_join (test->thread); - -+ g_main_context_unref (test->server_thread_context); -+ - g_clear_object (&test->connection); - - gkd_ssh_agent_service_stop (test->service); --- -2.20.1 - diff --git a/gnome-base/gnome-keyring/gnome-keyring-3.31.91-r1.ebuild b/gnome-base/gnome-keyring/gnome-keyring-3.31.91-r1.ebuild deleted file mode 100644 index 32f17ef73c92..000000000000 --- a/gnome-base/gnome-keyring/gnome-keyring-3.31.91-r1.ebuild +++ /dev/null @@ -1,85 +0,0 @@ -# Copyright 1999-2020 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=6 -GNOME2_LA_PUNT="yes" -PYTHON_COMPAT=( python2_7 ) - -inherit fcaps gnome2 pam python-any-r1 virtualx - -DESCRIPTION="Password and keyring managing daemon" -HOMEPAGE="https://wiki.gnome.org/Projects/GnomeKeyring" - -LICENSE="GPL-2+ LGPL-2+" -SLOT="0" -IUSE="+caps pam selinux +ssh-agent test" -RESTRICT="!test? ( test )" -KEYWORDS="~alpha amd64 arm arm64 ~ia64 ~mips ppc ppc64 sparc x86 ~amd64-linux ~x86-linux ~sparc-solaris ~x86-solaris" - -# Replace gkd gpg-agent with pinentry[gnome-keyring] one, bug #547456 -RDEPEND=" - >=app-crypt/gcr-3.27.90:=[gtk] - >=dev-libs/glib-2.44:2 - app-misc/ca-certificates - >=dev-libs/libgcrypt-1.2.2:0= - caps? ( sys-libs/libcap-ng ) - pam? ( sys-libs/pam ) - selinux? ( sec-policy/selinux-gnome ) - >=app-crypt/gnupg-2.0.28:= - ssh-agent? ( net-misc/openssh ) -" -DEPEND="${RDEPEND} - >=app-eselect/eselect-pinentry-0.5 - app-text/docbook-xml-dtd:4.3 - dev-libs/libxslt - >=sys-devel/gettext-0.19.8 - virtual/pkgconfig - test? ( ${PYTHON_DEPS} ) -" -PDEPEND="app-crypt/pinentry[gnome-keyring]" #570512 - -PATCHES=( - "${FILESDIR}"/${PV}-race-fix{1,2}.patch # fix race issues on start, where sometimes keyring doesn't work after login; from origin/master - "${FILESDIR}"/${PV}-ssh-tests-fix.patch - "${FILESDIR}"/${PV}-fix-musl.patch -) - -pkg_setup() { - use test && python-any-r1_pkg_setup -} - -src_prepare() { - # Disable stupid CFLAGS with debug enabled - sed -e 's/CFLAGS="$CFLAGS -g"//' \ - -e 's/CFLAGS="$CFLAGS -O0"//' \ - -i configure.ac configure || die - - gnome2_src_prepare -} - -src_configure() { - gnome2_src_configure \ - $(use_with caps libcap-ng) \ - $(use_enable pam) \ - $(use_with pam pam-dir $(getpam_mod_dir)) \ - $(use_enable selinux) \ - $(use_enable ssh-agent) \ - --enable-doc -} - -src_test() { - "${EROOT}${GLIB_COMPILE_SCHEMAS}" --allow-any-name "${S}/schema" || die - GSETTINGS_SCHEMA_DIR="${S}/schema" virtx emake check -} - -pkg_postinst() { - # cap_ipc_lock only needed if building --with-libcap-ng - # Never install as suid root, this breaks dbus activation, see bug #513870 - use caps && fcaps -m 755 cap_ipc_lock usr/bin/gnome-keyring-daemon - gnome2_pkg_postinst - - if ! [[ $(eselect pinentry show | grep "pinentry-gnome3") ]] ; then - ewarn "Please select pinentry-gnome3 as default pinentry provider:" - ewarn " # eselect pinentry set pinentry-gnome3" - fi -} |