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 632352 - Crash when changing password
Crash when changing password
Status: RESOLVED FIXED
Product: gnome-keyring
Classification: Core
Component: general
2.32.x
Other Linux
: Normal critical
: ---
Assigned To: GNOME keyring maintainer(s)
GNOME keyring maintainer(s)
Depends on:
Blocks:
 
 
Reported: 2010-10-17 10:22 UTC by Milan Bouchet-Valat
Modified: 2010-10-19 20:35 UTC
See Also:
GNOME target: ---
GNOME version: 2.31/2.32



Description Milan Bouchet-Valat 2010-10-17 10:22:45 UTC
gnome-keyring-daemon aborts when I change the password of the currently logged in account. I could reproduce this several times with two different user accounts.

Please ask if you need further debugging.

gnome-keyring version 2.92.92.is.2.31.91-0ubuntu4 (don't laugh! ;-)
(Ubuntu 10.10)

https://bugs.launchpad.net/bugs/662046

  • #0 __kernel_vsyscall
  • #1 *__GI_raise
    at ../nptl/sysdeps/unix/sysv/linux/raise.c line 64
  • #2 *__GI_abort
    at abort.c line 92
  • #3 g_assertion_message
    from /lib/libglib-2.0.so.0
  • #4 g_assertion_message_expr
    from /lib/libglib-2.0.so.0
  • #5 lock_private
    at gp11-module.c line 191
  • #6 gp11_module_set_pool_sessions
    at gp11-module.c line 994
  • #7 module_instance
    at gkd-login.c line 42
  • #8 gkd_login_change_lock
    at gkd-login.c line 441
  • #9 control_input
    at gkd-control-server.c line 106
  • #10 ??
    from /lib/libglib-2.0.so.0
  • #11 g_main_context_dispatch
    from /lib/libglib-2.0.so.0
  • #12 ??
    from /lib/libglib-2.0.so.0
  • #13 g_main_loop_run
    from /lib/libglib-2.0.so.0
  • #14 main
    at gkd-main.c line 846

Comment 1 Stef Walter 2010-10-18 13:13:52 UTC
Interesting. Could you post any relevant output from /var/log/auth.log?
Comment 2 Milan Bouchet-Valat 2010-10-18 17:19:38 UTC
Oct 18 19:14:12 milan passwd[2703]: pam_unix(passwd:chauthtok): password changed for milan
Oct 18 19:14:12 milan gnome-keyring-daemon[2707]: gp11_module_new: assertion `funcs' failed
Oct 18 19:14:12 milan gnome-keyring-daemon[2707]: **#012ERROR:gp11-module.c:191:lock_private: assertion failed: (GP11_IS_MODULE (obj))
Oct 18 19:14:12 milan passwd[2708]: couldn't read data from gnome-keyring-daemon: unexpected end of data
Oct 18 19:14:12 milan passwd[2703]: gkr-pam: couldn't change password for the login keyring.
Oct 18 19:14:12 milan passwd[2703]: Passphrase file wrapped

But I just noticed something weird: the crash only happens when changing password using users-admin. When using passwd directly or gnome-about-me, it works fine. Though, users-admin shares most of the code with the latter, and they both run passwd in the background. The only explanation I can see is that users-admin runs passwd to check that the password you entered is valid, and then runs another passwd instance in parallel to do the actual change. So that means two authentications, and one change; this can be confusing for g-k-d...
Comment 3 Stef Walter 2010-10-19 02:35:28 UTC
Thanks for the clear bug report. This should fix the problem.

commit 9ed868758a071cd478ba2431949abf225f4f9426
Author: Stef Walter <stef@memberwebs.com>
Date:   Tue Oct 19 02:34:01 2010 +0000

    [daemon] Check that daemon is initialized before changing password.
    
    Before changing login keyring password or unlocking, check that daemon
    is initialized.
    
    Fixes: https://bugzilla.gnome.org/show_bug.cgi?id=632352
Comment 4 Milan Bouchet-Valat 2010-10-19 20:35:59 UTC
Cool, thanks! I'm not really motivated to try it now, but I'll report if I still get the crash with the bugfix release.