[Commits] [SCM] claws branch, master, updated. 3.12.0-53-g1b32cc6

miras at claws-mail.org miras at claws-mail.org
Thu Aug 20 01:26:41 CEST 2015


The branch, master has been updated
       via  1b32cc6794190c9fb6124b6de5b6f23e3007eec9 (commit)
      from  70782f3f2c9fbabd40ae82ffd8853294b600d88c (commit)

Summary of changes:
 src/plugins/pgpcore/sgpgme.c |   12 ++++++++++++
 1 file changed, 12 insertions(+)


- Log -----------------------------------------------------------------
commit 1b32cc6794190c9fb6124b6de5b6f23e3007eec9
Author: Michael Rasmussen <mir at datanom.net>
Date:   Thu Aug 20 01:26:33 2015 +0200

    Fix possible crash when gpg is upgraded to gpg-v21

diff --git a/src/plugins/pgpcore/sgpgme.c b/src/plugins/pgpcore/sgpgme.c
index bd14362..6c21f2e 100644
--- a/src/plugins/pgpcore/sgpgme.c
+++ b/src/plugins/pgpcore/sgpgme.c
@@ -218,6 +218,18 @@ gchar *sgpgme_sigstat_info_short(gpgme_ctx_t ctx, gpgme_verify_result_t status)
 	} else if (gpg_err_code(err) != GPG_ERR_NO_ERROR && gpg_err_code(err) != GPG_ERR_EOF) {
 		return g_strdup_printf(_("The signature can't be checked - %s"), 
 			gpgme_strerror(err));
+	} else if (gpg_err_code(err) != GPG_ERR_NO_ERROR && gpg_err_code(err) == GPG_ERR_EOF) {
+		/*
+		 * When gpg is upgraded to gpg-v21 then installer tries to migrate the old
+		 * gpg keyrings found in ~/.gnupg to the new version. If the keyrings contain
+		 * very old keys using ciphers no more supported in gpg-v21 this transition
+		 * can fail and the left-over ~/.gnupg/pubring.gpg will cause claws to crash
+		 * when the above condition is meet.
+		 */
+		return g_strdup_printf(_("The signature can't be checked - %s. Removing\n"
+					 "left-over ~/.gnupg/pubring.gpg might solve the\n"
+					 "problem if you have installed gpg-v21"),
+                        gpgme_strerror(err));
 	}
 	if (key)
 		uname = extract_name(key->uids->uid);

-----------------------------------------------------------------------


hooks/post-receive
-- 
Claws Mail


More information about the Commits mailing list