- Backport fix from svn where newly created keyrings weren't found
- Don't unset default keyring on daemon shutdown
This commit is contained in:
parent
bff891aa68
commit
943ca97c72
14
gnome-keyring-2.20-add_new_keyrings.patch
Normal file
14
gnome-keyring-2.20-add_new_keyrings.patch
Normal file
@ -0,0 +1,14 @@
|
||||
Index: daemon/gkr-daemon-ops.c
|
||||
===================================================================
|
||||
--- daemon/gkr-daemon-ops.c (revision 838)
|
||||
+++ daemon/gkr-daemon-ops.c (revision 839)
|
||||
@@ -723,6 +723,9 @@
|
||||
g_warning ("couldn't create default keyring");
|
||||
ask->response = GKR_ASK_RESPONSE_FAILURE;
|
||||
} else {
|
||||
+ /* Add to our main list */
|
||||
+ gkr_keyrings_add (keyring);
|
||||
+
|
||||
/* Set our newly created keyring as the default */
|
||||
gkr_keyrings_set_default (keyring);
|
||||
}
|
91
gnome-keyring-2.20-no-unset-default.patch
Normal file
91
gnome-keyring-2.20-no-unset-default.patch
Normal file
@ -0,0 +1,91 @@
|
||||
diff -ur gnome-keyring-2.20.orig/daemon/gkr-daemon-ops.c gnome-keyring-2.20/daemon/gkr-daemon-ops.c
|
||||
--- gnome-keyring-2.20.orig/daemon/gkr-daemon-ops.c 2007-10-03 15:01:34.000000000 +0200
|
||||
+++ gnome-keyring-2.20/daemon/gkr-daemon-ops.c 2007-10-03 15:01:48.000000000 +0200
|
||||
@@ -1136,7 +1136,7 @@
|
||||
g_free (keyring_name);
|
||||
|
||||
if (res == GNOME_KEYRING_RESULT_OK)
|
||||
- gkr_keyrings_remove (keyring);
|
||||
+ gkr_keyrings_remove (keyring, TRUE);
|
||||
|
||||
return TRUE;
|
||||
}
|
||||
Only in gnome-keyring-2.20/daemon: gkr-daemon-ops.c.orig
|
||||
diff -ur gnome-keyring-2.20.orig/keyrings/gkr-keyring.c gnome-keyring-2.20/keyrings/gkr-keyring.c
|
||||
--- gnome-keyring-2.20.orig/keyrings/gkr-keyring.c 2007-10-03 15:01:34.000000000 +0200
|
||||
+++ gnome-keyring-2.20/keyrings/gkr-keyring.c 2007-10-03 15:01:48.000000000 +0200
|
||||
@@ -1211,7 +1211,7 @@
|
||||
if (!gkr_keyring_update_from_disk (keyring, TRUE)) {
|
||||
/* Failed to re-read, remove the keyring */
|
||||
g_warning ("Couldn't re-read keyring %s\n", keyring->keyring_name);
|
||||
- gkr_keyrings_remove (keyring);
|
||||
+ gkr_keyrings_remove (keyring, TRUE);
|
||||
}
|
||||
|
||||
return TRUE;
|
||||
diff -ur gnome-keyring-2.20.orig/keyrings/gkr-keyrings.c gnome-keyring-2.20/keyrings/gkr-keyrings.c
|
||||
--- gnome-keyring-2.20.orig/keyrings/gkr-keyrings.c 2007-10-03 15:01:34.000000000 +0200
|
||||
+++ gnome-keyring-2.20/keyrings/gkr-keyrings.c 2007-10-03 15:01:48.000000000 +0200
|
||||
@@ -235,7 +235,7 @@
|
||||
/* Try and update/load it */
|
||||
if (!gkr_keyring_update_from_disk (keyring, FALSE) ||
|
||||
!keyring->keyring_name || !keyring->keyring_name[0]) {
|
||||
- gkr_keyrings_remove (keyring);
|
||||
+ gkr_keyrings_remove (keyring, TRUE);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -257,7 +257,7 @@
|
||||
keyring = GKR_KEYRING (keyrings->data);
|
||||
if (keyring == session_keyring)
|
||||
session_keyring = NULL;
|
||||
- gkr_keyrings_remove (keyring);
|
||||
+ gkr_keyrings_remove (keyring, FALSE);
|
||||
}
|
||||
|
||||
g_free (default_keyring);
|
||||
@@ -411,7 +411,7 @@
|
||||
if (!keyring->location)
|
||||
continue;
|
||||
if (g_hash_table_lookup (checks, GUINT_TO_POINTER (keyring->location)))
|
||||
- gkr_keyrings_remove (keyring);
|
||||
+ gkr_keyrings_remove (keyring, TRUE);
|
||||
}
|
||||
g_hash_table_destroy (checks);
|
||||
|
||||
@@ -434,15 +434,19 @@
|
||||
}
|
||||
|
||||
void
|
||||
-gkr_keyrings_remove (GkrKeyring *keyring)
|
||||
+gkr_keyrings_remove (GkrKeyring *keyring,
|
||||
+ gboolean unset_if_default)
|
||||
{
|
||||
keyrings_init ();
|
||||
-
|
||||
+
|
||||
g_assert (GKR_IS_KEYRING (keyring));
|
||||
|
||||
+
|
||||
+
|
||||
if (g_list_find (keyrings, keyring)) {
|
||||
|
||||
- if (default_keyring &&
|
||||
+ if (unset_if_default &&
|
||||
+ default_keyring &&
|
||||
strcmp (keyring->keyring_name, default_keyring) == 0)
|
||||
gkr_keyrings_set_default (NULL);
|
||||
|
||||
diff -ur gnome-keyring-2.20.orig/keyrings/gkr-keyrings.h gnome-keyring-2.20/keyrings/gkr-keyrings.h
|
||||
--- gnome-keyring-2.20.orig/keyrings/gkr-keyrings.h 2007-10-03 15:01:34.000000000 +0200
|
||||
+++ gnome-keyring-2.20/keyrings/gkr-keyrings.h 2007-10-03 15:01:48.000000000 +0200
|
||||
@@ -36,7 +36,8 @@
|
||||
|
||||
void gkr_keyrings_add (GkrKeyring *keyring);
|
||||
|
||||
-void gkr_keyrings_remove (GkrKeyring *keyring);
|
||||
+void gkr_keyrings_remove (GkrKeyring *keyring,
|
||||
+ gboolean unset_if_default);
|
||||
|
||||
GkrKeyring* gkr_keyrings_find (const gchar *name);
|
||||
|
@ -3,7 +3,7 @@
|
||||
Summary: A framework for managing user passwords and other secrets
|
||||
Name: gnome-keyring
|
||||
Version: 2.20
|
||||
Release: 1%{?dist}
|
||||
Release: 2%{?dist}
|
||||
License: GPLv2+ and LGPLv2+
|
||||
Group: System Environment/Libraries
|
||||
Source: http://download.gnome.org/sources/gnome-keyring/2.20/gnome-keyring-%{version}.tar.bz2
|
||||
@ -19,6 +19,10 @@ BuildRequires: autoconf, automake, libtool
|
||||
BuildRequires: intltool
|
||||
BuildRequires: perl(XML::Parser)
|
||||
|
||||
# Backport from svn
|
||||
Patch1: gnome-keyring-2.20-add_new_keyrings.patch
|
||||
Patch2: gnome-keyring-2.20-no-unset-default.patch
|
||||
|
||||
%description
|
||||
gnome-keyring manages passwords and other types of secrets
|
||||
for the user, storing them encrypted with a main password.
|
||||
@ -57,6 +61,9 @@ and start the keyring daemon.
|
||||
%prep
|
||||
%setup -q -n gnome-keyring-%{version}
|
||||
|
||||
%patch1 -p0 -b .add_new_keyrings
|
||||
%patch2 -p1 -b .no_unset_default
|
||||
|
||||
%build
|
||||
aclocal
|
||||
automake
|
||||
@ -102,6 +109,11 @@ rm -rf $RPM_BUILD_ROOT
|
||||
|
||||
|
||||
%changelog
|
||||
* Mon Oct 3 2007 Alexander Larsson <alexl@redhat.com> - 2.20-2
|
||||
- Backport fix from svn where newly created keyrings weren't
|
||||
found
|
||||
- Don't unset default keyring on daemon shutdown
|
||||
|
||||
* Mon Sep 17 2007 Matthias Clasen <mclasen@redhat.com> - 2.20-1
|
||||
- Update to 2.20
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user