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 616703 - Changing the user password through gnome doesn't change the password for the login keyring
Changing the user password through gnome doesn't change the password for the ...
Status: RESOLVED FIXED
Product: gnome-control-center
Classification: Core
Component: User Accounts
3.4.x
Other Linux
: Normal normal
: ---
Assigned To: Control-Center Maintainers
Control-Center Maintainers
Depends on:
Blocks:
 
 
Reported: 2010-04-24 12:33 UTC by Joël Schaerer
Modified: 2012-08-23 10:12 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
Tranfer environment variables to passwd and set locale (1.80 KB, patch)
2010-08-05 23:54 UTC, Piotr P. Karwasz
none Details | Review
user-accounts: Fix login keyring password not getting updated (2.41 KB, patch)
2012-08-22 17:20 UTC, Bastien Nocera
committed Details | Review

Description Joël Schaerer 2010-04-24 12:33:37 UTC
Changing the user password through gnome doesn't change the password for the login keyring. Instead, the next time you log in, you get a rather cryptic message about "the keyring password no longer matches your user password", which prompts for the old password. Changing the keyring password requires the user to know about the gnome-keyring program and manually change the old password there as well.

Since the user password changing process requires the user to type his old password, it should be quite easy to use it to unlock the login keyring and update the password for it.
Comment 1 Piotr P. Karwasz 2010-08-05 23:54:00 UTC
Created attachment 167225 [details] [review]
Tranfer environment variables to passwd and set locale
Comment 2 Piotr P. Karwasz 2010-08-05 23:56:27 UTC
The 'about-me' dialog doesn't transfer the user environment variables to the spawned 'passwd' (it transfers a void environment). The PAM keyring module therefore can not connect to GNOME Keyring.
Comment 3 Bastien Nocera 2010-09-30 11:29:13 UTC
Will need to make sure that accountdialog doesn't suffer from the same bug.
Comment 4 André Klapper 2012-03-16 12:07:01 UTC
Moving open accountsdialog tickets from the deprecated and closed "accountsdialog" product to gnome-control-center/User Accounts.

Reporter: Retesting the reported problem against GNOME 3.2 or 3.4 and adding a comment here is highly welcome.
Comment 5 Joël Schaerer 2012-03-23 10:25:31 UTC
I've just tested it on Gnome 3.2.1 (Arch Linux, stock packaged version). Unfortunately, the problem is still there, exactly as it was before.
Comment 6 M. Niess 2012-04-02 15:09:15 UTC
This bug has been around since 2009 and still is present in GNOME 3.4, just tested on gnome-control-center 3.4.0.
Comment 7 Bastien Nocera 2012-08-22 17:19:23 UTC
(In reply to comment #2)
> The 'about-me' dialog doesn't transfer the user environment variables to the
> spawned 'passwd' (it transfers a void environment). The PAM keyring module
> therefore can not connect to GNOME Keyring.

Correct. But calling g_setenv() overriding the locale in the middle of execution is really not something you want to do (unless you want to end up with random parts of the UI in C language for example).
Comment 8 Bastien Nocera 2012-08-22 17:20:41 UTC
Created attachment 222170 [details] [review]
user-accounts: Fix login keyring password not getting updated

By passing the environment down to passwed rather than an empty one.
This means that passwd's PAM modules will be able to access the session
D-Bus, for the gnome-keyring PAM module to change the keyring password
for example.
Comment 9 Bastien Nocera 2012-08-23 10:12:23 UTC
Attachment 222170 [details] pushed as af8a644 - user-accounts: Fix login keyring password not getting updated