diff --git a/.cvsignore b/.cvsignore index b90602e..3999f6c 100644 --- a/.cvsignore +++ b/.cvsignore @@ -1 +1 @@ -gnome-keyring-2.29.5.tar.bz2 +gnome-keyring-2.29.90.tar.bz2 diff --git a/gnome-keyring-2.29.4-die-on-session-exit.patch b/gnome-keyring-2.29.4-die-on-session-exit.patch deleted file mode 100644 index f131401..0000000 --- a/gnome-keyring-2.29.4-die-on-session-exit.patch +++ /dev/null @@ -1,16 +0,0 @@ -diff -up gnome-keyring-2.29.4/daemon/dbus/gkd-dbus-session.c.bak gnome-keyring-2.29.4/daemon/dbus/gkd-dbus-session.c ---- gnome-keyring-2.29.4/daemon/dbus/gkd-dbus-session.c.bak 2009-12-15 04:31:36.000000000 +0100 -+++ gnome-keyring-2.29.4/daemon/dbus/gkd-dbus-session.c 2009-12-22 14:44:45.000000000 +0100 -@@ -130,7 +130,11 @@ signal_filter (DBusConnection *conn, DBu - unregister_daemon_in_session (conn); - gkd_main_quit (); - return DBUS_HANDLER_RESULT_HANDLED; -- } -+ } else if (dbus_message_is_signal (msg, DBUS_INTERFACE_LOCAL, "Disconnected")) { -+ unregister_daemon_in_session (conn); -+ gkd_main_quit (); -+ return DBUS_HANDLER_RESULT_HANDLED; -+ } - - return DBUS_HANDLER_RESULT_NOT_YET_HANDLED; - } diff --git a/gnome-keyring-2.29.6-dbus-refresh-store.patch b/gnome-keyring-2.29.6-dbus-refresh-store.patch deleted file mode 100644 index ce2828e..0000000 --- a/gnome-keyring-2.29.6-dbus-refresh-store.patch +++ /dev/null @@ -1,63 +0,0 @@ -From 4d22df25dac5c051c04f8d957169ff5ba45b5020 Mon Sep 17 00:00:00 2001 -From: Stef Walter -Date: Sat, 06 Feb 2010 15:06:16 +0000 -Subject: [dbus] Refresh and store the default keyring correctly. - -Although the default keyring was being loaded, it was not being -used correctly by the path resolution code. ---- -diff --git a/daemon/dbus/gkd-secret-service.c b/daemon/dbus/gkd-secret-service.c -index 4e2b01c..3d5bd19 100644 ---- a/daemon/dbus/gkd-secret-service.c -+++ b/daemon/dbus/gkd-secret-service.c -@@ -56,7 +56,6 @@ struct _GkdSecretService { - GHashTable *clients; - gchar *match_rule; - GkdSecretObjects *objects; -- gchar *default_collection; - }; - - typedef struct _ServiceClient { -@@ -88,9 +87,11 @@ static void - update_default (GkdSecretService *self, gboolean force) - { - gchar *contents = NULL; -+ const gchar *identifier; - gchar *path; - -- if (!force && self->default_collection) -+ identifier = gkd_secret_objects_get_alias (self->objects, "default"); -+ if (!force && identifier) - return; - - path = default_path (); -@@ -103,21 +104,23 @@ update_default (GkdSecretService *self, gboolean force) - } - g_free (path); - -- g_free (self->default_collection); -- self->default_collection = contents; -+ gkd_secret_objects_set_alias (self->objects, "default", contents); -+ g_free (contents); - } - - static void - store_default (GkdSecretService *self) - { - GError *error = NULL; -+ const gchar *identifier; - gchar *path; - -- if (!self->default_collection) -+ identifier = gkd_secret_objects_get_alias (self->objects, "default"); -+ if (!identifier) - return; - - path = default_path (); -- if (!g_file_set_contents (path, self->default_collection, -1, &error)) { -+ if (!g_file_set_contents (path, identifier, -1, &error)) { - g_message ("couldn't store default keyring: %s", - error->message ? error->message : ""); - } --- -cgit v0.8.3.1 diff --git a/gnome-keyring-2.29.6-lookup-endless-loop.patch b/gnome-keyring-2.29.6-lookup-endless-loop.patch deleted file mode 100644 index f138bd0..0000000 --- a/gnome-keyring-2.29.6-lookup-endless-loop.patch +++ /dev/null @@ -1,31 +0,0 @@ -From 7407bcbbb0da9721c9ead7b9253b8dd90b12ccda Mon Sep 17 00:00:00 2001 -From: Stef Walter -Date: Thu, 21 Jan 2010 14:49:00 +0000 -Subject: Fix endless loop when looking for password in login keyring. - -If the password for an encryption key was stored in the login -keyring in the 'old' way, there could be an endless loop if -it was the wrong password. ---- -diff --git a/daemon/pkcs11/gkd-pkcs11-auth.c b/daemon/pkcs11/gkd-pkcs11-auth.c -index 599e212..e9cc232 100644 ---- a/daemon/pkcs11/gkd-pkcs11-auth.c -+++ b/daemon/pkcs11/gkd-pkcs11-auth.c -@@ -518,8 +518,15 @@ login_specific_done (CK_SESSION_HANDLE handle, CK_SESSION_INFO *info, - case CKR_PIN_INVALID: - case CKR_PIN_LEN_RANGE: - case CKR_PIN_LOCKED: -+ /* Clear out any stored secret */ - if (object->unique && object->token) - gkd_login_remove_secret ("unique", object->unique, NULL); -+ -+ /* COMPAT: Clear old method of storing secrets for objects in login keyring */ -+ if (object->digest) { -+ convert_upper_case (object->digest); -+ gkd_login_remove_secret ("object-digest", object->digest, NULL); -+ } - break; - - case CKR_OK: --- -cgit v0.8.3.1 diff --git a/gnome-keyring-2.29.6-pkcs11-attributes-storing.patch b/gnome-keyring-2.29.6-pkcs11-attributes-storing.patch deleted file mode 100644 index c8007a4..0000000 --- a/gnome-keyring-2.29.6-pkcs11-attributes-storing.patch +++ /dev/null @@ -1,57 +0,0 @@ -From aa548019df045b4085c088c84aec585ab0e62a98 Mon Sep 17 00:00:00 2001 -From: Stef Walter -Date: Sun, 07 Feb 2010 17:32:57 +0000 -Subject: [pkcs11] Set attributes on object before storing. - -Set attributes on new objects before storing them. ---- -diff --git a/pkcs11/gck/gck-session.c b/pkcs11/gck/gck-session.c -index 8b280ec..ead7b1c 100644 ---- a/pkcs11/gck/gck-session.c -+++ b/pkcs11/gck/gck-session.c -@@ -770,7 +770,6 @@ gck_session_create_object_for_factory (GckSession *self, GckFactory *factory, - { - GckTransaction *owned = NULL; - GckObject *object; -- gulong i; - - g_return_val_if_fail (GCK_IS_SESSION (self), NULL); - g_return_val_if_fail (factory && factory->func, NULL); -@@ -797,13 +796,6 @@ gck_session_create_object_for_factory (GckSession *self, GckFactory *factory, - gck_transaction_fail (transaction, CKR_GENERAL_ERROR); - } - -- /* Next go through and set all attributes that weren't used initially */ -- gck_attributes_consume (template, count, CKA_TOKEN, G_MAXULONG); -- for (i = 0; i < count && !gck_transaction_get_failed (transaction); ++i) { -- if (!gck_attribute_consumed (&template[i])) -- gck_object_set_attribute (object, self, transaction, &template[i]); -- } -- - g_free (template); - - if (owned) -@@ -846,6 +838,7 @@ gck_session_complete_object_creation (GckSession *self, GckTransaction *transact - GckObject *object, CK_ATTRIBUTE_PTR attrs, CK_ULONG n_attrs) - { - gboolean is_private; -+ gulong i; - - g_return_if_fail (GCK_IS_SESSION (self)); - g_return_if_fail (GCK_IS_OBJECT (object)); -@@ -872,6 +865,13 @@ gck_session_complete_object_creation (GckSession *self, GckTransaction *transact - return gck_transaction_fail (transaction, CKR_USER_NOT_LOGGED_IN); - } - -+ /* Next go through and set all attributes that weren't used initially */ -+ gck_attributes_consume (attrs, n_attrs, CKA_TOKEN, G_MAXULONG); -+ for (i = 0; i < n_attrs && !gck_transaction_get_failed (transaction); ++i) { -+ if (!gck_attribute_consumed (&attrs[i])) -+ gck_object_set_attribute (object, self, transaction, &attrs[i]); -+ } -+ - /* Find somewhere to store the object */ - if (gck_object_is_token (object)) - gck_module_store_token_object (self->pv->module, transaction, object); --- -cgit v0.8.3.1 diff --git a/gnome-keyring-2.29.6-prompt-show-entry.patch b/gnome-keyring-2.29.6-prompt-show-entry.patch deleted file mode 100644 index 2c722d3..0000000 --- a/gnome-keyring-2.29.6-prompt-show-entry.patch +++ /dev/null @@ -1,18 +0,0 @@ - ---- a/daemon/dbus/gkd-secret-create.c 2009-12-14 20:30:29.000000000 +0530 -+++ b/daemon/dbus/gkd-secret-create.c 2010-01-23 02:41:54.000000000 +0530 -@@ -82,9 +82,9 @@ - gkd_prompt_set_secondary_text (prompt, text); - g_free (text); - -- gkd_prompt_hide_widget (prompt, "name_area"); -- gkd_prompt_hide_widget (prompt, "confirm_area"); -- gkd_prompt_hide_widget (prompt, "details_area"); -+ gkd_prompt_show_widget (prompt, "password_area"); -+ gkd_prompt_show_widget (prompt, "confirm_area"); -+ gkd_prompt_show_widget (prompt, "details_area"); - - g_free (label); - } - -Diff finished. Sat Jan 23 02:42:59 2010 diff --git a/gnome-keyring-2.29.6-secrets-reloading.patch b/gnome-keyring-2.29.6-secrets-reloading.patch deleted file mode 100644 index 0bc953a..0000000 --- a/gnome-keyring-2.29.6-secrets-reloading.patch +++ /dev/null @@ -1,64 +0,0 @@ -From 701cab2c3b40216c01bf1cda23fe15c9ff0d7caa Mon Sep 17 00:00:00 2001 -From: Stef Walter -Date: Sat, 06 Feb 2010 15:39:05 +0000 -Subject: [secrets] Fix problems with collection reloading. - -The module had a bug which would cause collections that were reloaded -to appear as new collections ---- -diff --git a/pkcs11/secret-store/gck-secret-module.c b/pkcs11/secret-store/gck-secret-module.c -index 0cd7f50..5b08008 100644 ---- a/pkcs11/secret-store/gck-secret-module.c -+++ b/pkcs11/secret-store/gck-secret-module.c -@@ -110,15 +110,15 @@ complete_add (GckTransaction *transaction, GObject *obj, gpointer user_data) - static void - add_collection (GckSecretModule *self, GckTransaction *transaction, GckSecretCollection *collection) - { -- const gchar *identifier; -+ const gchar *filename; - - g_assert (GCK_IS_SECRET_MODULE(self)); - g_assert (GCK_IS_SECRET_COLLECTION (collection)); - -- identifier = gck_secret_object_get_identifier (GCK_SECRET_OBJECT (collection)); -- g_return_if_fail (identifier); -+ filename = gck_secret_collection_get_filename (collection); -+ g_return_if_fail (filename); - -- g_hash_table_replace (self->collections, g_strdup (identifier), g_object_ref (collection)); -+ g_hash_table_replace (self->collections, g_strdup (filename), g_object_ref (collection)); - - gck_object_expose_full (GCK_OBJECT (collection), transaction, TRUE); - if (transaction) -@@ -138,15 +138,15 @@ complete_remove (GckTransaction *transaction, GObject *obj, gpointer user_data) - static void - remove_collection (GckSecretModule *self, GckTransaction *transaction, GckSecretCollection *collection) - { -- const gchar *identifier; -+ const gchar *filename; - - g_assert (GCK_IS_SECRET_MODULE (self)); - g_assert (GCK_IS_SECRET_COLLECTION (collection)); - -- identifier = gck_secret_object_get_identifier (GCK_SECRET_OBJECT (collection)); -- g_return_if_fail (identifier); -+ filename = gck_secret_collection_get_filename (collection); -+ g_return_if_fail (filename); - -- g_hash_table_remove (self->collections, identifier); -+ g_hash_table_remove (self->collections, filename); - - gck_object_expose_full (GCK_OBJECT (collection), transaction, FALSE); - if (transaction) -@@ -222,6 +222,9 @@ on_file_load (GckFileTracker *tracker, const gchar *path, GckSecretModule *self) - "filename", path, - "manager", manager, - NULL); -+ } else { -+ created = FALSE; -+ g_object_ref (collection); - } - - res = gck_secret_collection_load (collection); --- -cgit v0.8.3.1 diff --git a/gnome-keyring-2.29.6-stat-include.patch b/gnome-keyring-2.29.6-stat-include.patch deleted file mode 100644 index a310204..0000000 --- a/gnome-keyring-2.29.6-stat-include.patch +++ /dev/null @@ -1,14 +0,0 @@ -*** a/daemon/control/gkd-control-client.c 2009-12-20 01:24:11.000000000 +0530 ---- b/daemon/control/gkd-control-client.c 2010-01-23 03:08:37.000000000 +0530 -*************** -*** 34,39 **** ---- 34,40 ---- - #include - #include - #include -+ #include - - static int - control_connect (const gchar *path) - -Diff finished. Sat Jan 23 03:08:42 2010 diff --git a/gnome-keyring.spec b/gnome-keyring.spec index 8490f56..989109f 100644 --- a/gnome-keyring.spec +++ b/gnome-keyring.spec @@ -1,43 +1,22 @@ %define glib2_version 2.16.0 %define gtk2_version 2.18.0 %define dbus_version 1.0 -%define eggdbus_version 0.4 %define hal_version 0.5.7 %define gcrypt_version 1.2.2 %define libtasn1_version 0.3.4 Summary: Framework for managing passwords and other secrets Name: gnome-keyring -Version: 2.29.5 -Release: 4%{?dist} +Version: 2.29.90 +Release: 1%{?dist} License: GPLv2+ and LGPLv2+ Group: System Environment/Libraries Source: http://download.gnome.org/sources/gnome-keyring/2.29/gnome-keyring-%{version}.tar.bz2 -# https://bugzilla.gnome.org/show_bug.cgi?id=598494 -Patch2: gnome-keyring-2.29.4-die-on-session-exit.patch - # http://bugzilla.redhat.com/529709 # http://bugs.gnome.org/598494 Patch3: gnome-keyring-2.28.1-nopass.patch -# from upstream -Patch4: gnome-keyring-2.29.6-lookup-endless-loop.patch - -# FTBFS: undefined reference to S_ISSOCK -# https://bugzilla.gnome.org/show_bug.cgi?id=607819 -Patch5: gnome-keyring-2.29.6-stat-include.patch - -# Gnome keyring prompt new password request does not have text entry boxes -# https://bugzilla.redhat.com/show_bug.cgi?id=560345 -# https://bugzilla.gnome.org/show_bug.cgi?id=607869 -Patch6: gnome-keyring-2.29.6-prompt-show-entry.patch - -# from upstream -Patch7: gnome-keyring-2.29.6-dbus-refresh-store.patch -Patch8: gnome-keyring-2.29.6-secrets-reloading.patch -Patch9: gnome-keyring-2.29.6-pkcs11-attributes-storing.patch - URL: http://www.gnome.org BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) @@ -46,7 +25,6 @@ BuildRequires: glib2-devel >= %{glib2_version} BuildRequires: gtk2-devel >= %{gtk2_version} BuildRequires: GConf2-devel BuildRequires: dbus-devel >= %{dbus_version} -BuildRequires: eggdbus-devel >= %{eggdbus_version} BuildRequires: libgcrypt-devel >= %{gcrypt_version} BuildRequires: libtasn1-devel >= %{libtasn1_version} BuildRequires: pam-devel @@ -97,14 +75,7 @@ automatically unlock the "login" keyring when the user logs in. %prep %setup -q -n gnome-keyring-%{version} -%patch2 -p1 -b .die-on-session-exit %patch3 -p1 -b .no-pass -%patch4 -p1 -b .lookup-endless-loop -%patch5 -p1 -b .ftbfs-stat -%patch6 -p1 -b .prompt-entry -%patch7 -p1 -b .dbus-refresh -%patch8 -p1 -b .secrets-reloading -%patch9 -p1 -b .attributes-storing %build @@ -183,6 +154,9 @@ fi %changelog +* Tue Feb 9 2010 Tomas Bzatek - 2.29.90-1 +- Update to 2.29.90 + * Mon Feb 8 2010 Tomas Bzatek - 2.29.5-4 - Backport some fixes related to password saving diff --git a/sources b/sources index 0d5e8a0..7995bd4 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -13c0da5743242313400fe86a363a5f69 gnome-keyring-2.29.5.tar.bz2 +b83675cb9830d9899de4c55df1df2be7 gnome-keyring-2.29.90.tar.bz2