After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 637977 - MSN account (telepathy-butterfly) vanishes when password is removed from keyring
MSN account (telepathy-butterfly) vanishes when password is removed from keyring
Status: RESOLVED NOTGNOME
Product: empathy
Classification: Core
Component: Accounts
2.32.x
Other Linux
: Normal normal
: ---
Assigned To: empathy-maint
Depends on:
Blocks:
 
 
Reported: 2010-12-24 20:54 UTC by Dylan McCall
Modified: 2010-12-30 20:41 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description Dylan McCall 2010-12-24 20:54:19 UTC
Pushed upstream from Launchpad: http://bugs.launchpad.net/ubuntu/+source/empathy/+bug/689022

I have Empathy hooked up to an MSN account, which uses telepathy-butterfly. My password for that account is in Gnome Keyring's password store like this:
account: butterfly/msn/[$LOGINNAME]; param: param-password

If that stored password is missing, the account completely vanishes from Empathy's Accounts list. It does not seem to disappear from ~/.mission-control/accounts/accounts.cfg.

This does not happen with any other protocols. (Normally, Empathy will just recognise it needs a password for an account).
I recently switched my default keyring from Default to Login, which triggered the issue.
This can cause data loss (in a practical sense), since the conversation logs for the vanished account are no longer available from Empathy's interface.

Steps to reproduce:
 * Add a telepathy-butterfly account in Empathy
 * Quit Empathy, make sure telepathy-* and mission-control are not running. (Probably not necessary, but just to be sure).
 * Open Seahorse. Search for a password with “account: butterfly/msn” in the description and delete it.
 * Log out and log in, again just to be sure.
 * Start Empathy. Note that the MSN account is missing.
Comment 1 Jonny Lamb 2010-12-30 18:28:17 UTC
You're going behind mission-control's back and deleting the password from underneath it. mission-control put the password there and so when it can't find it there it realises it doesn't have the password available anymore it claims the account is now invalid.

This all stems to the fact that you used to not be able to have password-less accounts in mission-control.

I have recently been addressing this by implementing the SASL authentication interface over connection managers and Empathy itself. I have gotten all this merged in some CMs, such as gabble (Jabber), but not in all yet. I'm guessing you're just using newer components in the stack than others which is why you think you don't have to save a password on every type of account. Proper support for this will be displayed by the fact that you won't have to go into seahorse and delete the password manually.

Since telepathy-gabble 0.11.4 and empathy 2.91.4, you can do this nicely with Jabber accounts. Once the SASL code that I wrote for butterfly is merged then using Empathy ≥ 2.91.4 you will be able to do the same there.

You can follow the progress of the butterfly code I wrote here: https://bugs.freedesktop.org/show_bug.cgi?id=32445
Comment 2 Dylan McCall 2010-12-30 20:41:26 UTC
Aha, that explains it. Thank you, Jonny! :)