[Users] after upgrade from F12 -> F22 some issue w/ claws

Michael Schwendt bugreporter at abwesend.de
Sun Jul 12 15:59:47 CEST 2015


On Sun, 12 Jul 2015 15:24:36 +0200, Maurizio Marini wrote:

> I have upgraded from F21 to F22 2 days ago

F21 (Fedora 21) also includes Claws Mail 3.11.1 for several months.

> Could not queue message for sending
>     Signature failed: secret key specification is ambiguous
> 
> and in .xsession-errors
> 
> ** (claws-mail:1526): WARNING **: ambiguous specification of secret key
> 'B50F1EB9'

That is nothing new in Claws Mail 3.11.1 either.

> Is is useless to add that key B50F1EB9 isn't ambiguous

Useless is the missing trouble-shooting. :(
No output from claws-mail --debug.
No output from "gpg --list-keys F8128D6A" or other GPG commands
to give some details.

> and I have used it with claws for many years until I upgraded on Friday to
> F22

Further trouble-shooting will be necessary, since the loop that prints the
error has found multiple keys matching the keyid.

src/plugins/pgpcore/sgpgme.c:

                found_key = NULL;
		/* Look for any key, not just private ones, or GPGMe doesn't
		 * correctly set the revoked flag. */
		err = gpgme_op_keylist_start(ctx, keyid, 0);
		while ((err = gpgme_op_keylist_next(ctx, &key)) == 0) {
			if (key == NULL)
				continue;

			if (!key->can_sign)
				continue;

			if (key->protocol != gpgme_get_protocol(ctx)) {
				debug_print("skipping a key (wrong protocol %d)\n", key->protocol);
				gpgme_key_release(key);
				continue;
			}

			if (key->expired) {
				debug_print("skipping a key, expired");
				gpgme_key_release(key);
				continue;
			}
			if (key->revoked) {
				debug_print("skipping a key, revoked");
				gpgme_key_release(key);
				continue;
			}
			if (key->disabled) {
				debug_print("skipping a key, disabled");
				gpgme_key_release(key);
				continue;
			}

			if (found_key != NULL) {
				gpgme_key_release(key);
				gpgme_op_keylist_end(ctx);
				g_warning("ambiguous specification of secret key '%s'\n", keyid);
				privacy_set_error(_("Secret key specification is ambiguous"));
				goto bail;
			}

			found_key = key;
                }
		gpgme_op_keylist_end(ctx);

		if (found_key == NULL) {
			g_warning("setup_signers start: %s", gpgme_strerror(err));
			privacy_set_error(_("Secret key not found (%s)"), gpgme_strerror(err));
			goto bail;
                }



More information about the Users mailing list