From e2ff096e40789559fdde7b66850c0322b0682b6c Mon Sep 17 00:00:00 2001 From: Matthias Clasen Date: Oct 09 2009 01:44:19 +0000 Subject: Fix handling of rsa1 keys --- diff --git a/gnome-keyring.spec b/gnome-keyring.spec index e867450..138e4ae 100644 --- a/gnome-keyring.spec +++ b/gnome-keyring.spec @@ -8,7 +8,7 @@ Summary: Framework for managing passwords and other secrets Name: gnome-keyring Version: 2.28.0 -Release: 2%{?dist} +Release: 3%{?dist} License: GPLv2+ and LGPLv2+ Group: System Environment/Libraries Source: http://download.gnome.org/sources/gnome-keyring/2.28/gnome-keyring-%{version}.tar.bz2 @@ -16,6 +16,9 @@ Source: http://download.gnome.org/sources/gnome-keyring/2.28/gnome-keyring-%{ver # https://bugzilla.gnome.org/show_bug.cgi?id=595698 Patch0: gnome-keyring-no-logout-delay.patch +# fixed upstream: https://bugzilla.gnome.org/show_bug.cgi?id=597813 +Patch1: rsa1-keys.patch + URL: http://www.gnome.org BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) @@ -69,6 +72,7 @@ automatically unlock the "login" keyring when the user logs in. %prep %setup -q -n gnome-keyring-%{version} %patch0 -p1 -b .logout-delay +%patch1 -p1 -b .rsa1-keys %build %configure --disable-gtk-doc --with-pam-dir=/%{_lib}/security --disable-acl-prompts @@ -146,6 +150,9 @@ fi %changelog +* Thu Oct 8 2009 Matthias Clasen - 2.28.0-3 +- Fix handling of rsa1 keys + * Fri Oct 2 2009 Matthias Clasen - 2.28.0-2 - Avoid a 10 second delay at logout diff --git a/rsa1-keys.patch b/rsa1-keys.patch new file mode 100644 index 0000000..5959f7f --- /dev/null +++ b/rsa1-keys.patch @@ -0,0 +1,47 @@ +From 63c148b12c08ea0cfe72ac921abdcbebba84acc1 Mon Sep 17 00:00:00 2001 +From: Vincent Untz +Date: Thu, 8 Oct 2009 16:25:11 +0200 +Subject: [PATCH] [ssh-agent] Fix support for rsa1 keys + +Read the comment, instead of ignoring it and using the bytes as if they +were constraints. + +https://bugzilla.gnome.org/show_bug.cgi?id=597813 +--- + pkcs11/ssh-agent/gck-ssh-agent-ops.c | 14 ++++++++++++++ + 1 files changed, 14 insertions(+), 0 deletions(-) + +diff --git a/pkcs11/ssh-agent/gck-ssh-agent-ops.c b/pkcs11/ssh-agent/gck-ssh-agent-ops.c +index d3507f4..c02c43e 100644 +--- a/pkcs11/ssh-agent/gck-ssh-agent-ops.c ++++ b/pkcs11/ssh-agent/gck-ssh-agent-ops.c +@@ -685,6 +685,7 @@ op_v1_add_identity (GckSshAgentCall *call) + { + GP11Attributes *pub, *priv; + GP11Session *session; ++ gchar *comment = NULL; + gboolean ret; + gsize offset = 5; + guint32 unused; +@@ -702,6 +703,19 @@ op_v1_add_identity (GckSshAgentCall *call) + return FALSE; + } + ++ /* Get the comment */ ++ if (!egg_buffer_get_string (call->req, offset, &offset, &comment, (EggBufferAllocator)g_realloc)) { ++ gp11_attributes_unref (pub); ++ gp11_attributes_unref (priv); ++ return FALSE; ++ } ++ ++ /* ++ gp11_attributes_add_string (pub, CKA_LABEL, comment); ++ gp11_attributes_add_string (priv, CKA_LABEL, comment); ++ */ ++ g_free (comment); ++ + gp11_attributes_add_string (priv, CKA_LABEL, V1_LABEL); + gp11_attributes_add_string (pub, CKA_LABEL, V1_LABEL); + +-- +1.6.4.2 \ No newline at end of file