GNOME Bugzilla – Bug 682830
3.5.90: keyring prompt can't be confirmed or cancelled
Last modified: 2013-05-09 03:58:16 UTC
Install on a rather fresh machine, no setup done. Initial start of evo asks for account to setup; follow the assistant, all goes well. At the end a gnome-shell -keyring dialog asks me for the username and password for my imap user, which I present. Confirming or cancelling the dialog does not make it disappear though. session log file lists Window manager warning: Log level 8: shell_keyring_prompt_complete: assertion `self->mode != PROMPTING_NONE' failed Window manager warning: Log level 8: shell_keyring_prompt_cancel: assertion `self->mode != PROMPTING_NONE' failed depending if confirm or cancel was pressed.
(actually, I just see that seahorse does not have any keyrings... which sounds wrong too and might be the root cause here)
Seems to work fine for me in fallback mode. The warnings are coming from shell-keyring-prompt.c in gnome-shell, so reassigning.
We just acknowledge requests that gnome-keyring sends us. CCing stefw.
FWIW, this is evolution using the gcr prompting infrastructure. gnome-keyring-daemon itsealf (or the keyrings are not involved). Anyway. Looks like a bug. Dominique, could you run this initial start of evolution like this (adjust for the involved process): GCR_DEBUG=all evolution ... and post the output?
Stef: Will do this evening and report back here.
> GCR_DEBUG=all evolution ** (evolution:4645): WARNING **: Couldn't connect to accessibility bus: Failed to connect to socket /tmp/dbus-saXhTllzJp: Connection refused (evolution:4645): Gcr-DEBUG: gcr_secret_exchange_set_property: explicitly using secret exchange protocol: sx-aes-1 (evolution:4645): Gcr-DEBUG: gcr_secret_exchange_default_generate_exchange_key: generating public key (evolution:4645): Gcr-DEBUG: gcr_secret_exchange_begin: beginning the secret exchange: [sx-aes-1]\npublic=TZunkWnr1/eQoT3gjpCABk+kQLrFnc2Vj1dlwQ0+pGEM/KVz3+Z/StGvjv7ujH5+8lPq8I4fq3aTfI7G3Pr7uO+5ESLGaEt5ArU6DbS3XeS8U9nbLRc9mjUuAwGaVtHdR9pQhB1X9h/NXcthT2UqG42y0zbHJM8vgcaxnzO4R8O1yAGEuqRYRuA003YtM7GldK/Zz0uPGaorMXcG0LrtMvhbw9zy2p4LasteF0eNdWSQm8Hpb8gDTd+zy1u7HzNl\n (evolution:4645): Gcr-DEBUG: gcr_secret_exchange_receive: receiving secret exchange: [sx-aes-1]\npublic=9BRqyGybP/lGoo28f3QjEbDNWz4gXDCjjwkSFEnZCBE26STYHKSpp+o+VQFfF3ikAUSC3nL5Ct77LF4V9+3JP4d49aWCiKLAA+o1TNbzZr8pzvnRTn4NkFSOCMjgTpXMvtaTWeP1EIsTg7DpBrSwF2Eqb4iogZ+uXFS9xdiQRoKFS/HwDSHFqacYT0XPzY2+MvwPZKqrtGGQ0B9eiuuYM8p3rWgoJBE0FuxavyECu44F9gdRExMR0xg/DW/L7dVB\nsecret=+oGOvnBcjCwywp81STFlqQ==\niv=rnDZrGakmh2DE1uk1Yhv9w==\n (evolution:4645): Gcr-DEBUG: derive_key: deriving shared transport key (evolution:4645): Gcr-DEBUG: gcr_secret_exchange_default_derive_transport_key: deriving transport key (evolution:4645): Gcr-DEBUG: gcr_secret_exchange_default_decrypt_transport_data: decrypting data That's about what I see... then I'm stuck with the shell screen asking for my IAMP password. The only way out is killing gnome-shell.
Anything else I can provide here? I still see this issue on my recent masterer openSUSE 12.2 live disc with gnome 3.5.91 (and thus also evo 3.5.91). Configuring an account and using it is impossible like this.
I couldn't duplicate the issue per se, where the only way to break out of the prompt is killing gnome-shell. That may be because my IMAP server was responsive. I believe the core of this issue to be: bug #684433. (In reply to comment #0) > session log file lists > Window manager warning: Log level 8: shell_keyring_prompt_complete: assertion > `self->mode != PROMPTING_NONE' failed > Window manager warning: Log level 8: shell_keyring_prompt_cancel: assertion > `self->mode != PROMPTING_NONE' failed These warnings are caused by bug #684438, and fixed by the patch attached there. They are not super serious, merely that the buttons are providing input when they should be disabled.
Since evolution doesn't want to hide the prompt while trying out the password (see comments on bug #684433), we need to implement cancellation during the time when the prompt isn't actually prompting. bug #678611 does that.
I'm going to go ahead and move this off the blocker list.
Created attachment 241725 [details] [review] components: Allow cancelling of dialog between prompts Some callers of the keyring prompt keep the dialog up while processing the prompt. Allow the user to cancel the prompt while in this state. This is propagated to the caller, who can cancel the operation in question when this occurs.
Review of attachment 241725 [details] [review]: OK.
Attachment 241725 [details] pushed as d7528b8 - components: Allow cancelling of dialog between prompts