GNOME Bugzilla – Bug 588443
gnome-keyring-daemon crashes with "Error reading response length from authentication socket."
Last modified: 2009-07-21 14:06:19 UTC
Steps to reproduce: gnome-keyring-daemon crashes the first time I try to ssh to anywhere. In the terminal I get "Error reading response length from authentication socket." What should happen is the box should pop-up to prompt me for the password to unlock the password protected ssh key. Stack trace: GNU gdb 6.8-debian Copyright (C) 2008 Free Software Foundation, Inc. License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html> This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law. Type "show copying" and "show warranty" for details. This GDB was configured as "x86_64-linux-gnu"... (gdb) run --daemonize Starting program: /usr/bin/gnome-keyring-daemon --daemonize [Thread debugging using libthread_db enabled] [New Thread 0x7fd65caa2790 (LWP 8489)] ** Message: couldn't set environment variable in session: Setenv interface is only available during the Initialization phase GNOME_KEYRING_SOCKET=/tmp/keyring-cbrDDy/socket SSH_AUTH_SOCK=/tmp/keyring-cbrDDy/socket.ssh GNOME_KEYRING_PID=8493 Program received signal SIGPIPE, Broken pipe.
+ Trace 216409
Thread 140558654384016 (LWP 8489)
Thread 1 (Thread 0x7fd65caa2790 (LWP 8489))
574 in gkr-daemon.c (gdb) q The program is running. Exit anyway? (y or n) Terminal output (gdb) *** glibc detected *** /usr/bin/gnome-keyring-daemon: free(): invalid pointer: 0x00007fd65cab0098 *** ======= Backtrace: ========= /lib/libc.so.6[0x7fd65af66cb8] /lib/libc.so.6(cfree+0x76)[0x7fd65af69276] /usr/bin/gnome-keyring-daemon[0x43eef2] /usr/bin/gnome-keyring-daemon[0x46953f] /usr/bin/gnome-keyring-daemon[0x43f5d9] /usr/bin/gnome-keyring-daemon[0x43dd38] /usr/bin/gnome-keyring-daemon[0x43e0f6] /usr/bin/gnome-keyring-daemon[0x43d916] /usr/lib/libgobject-2.0.so.0(g_closure_invoke+0x16d)[0x7fd65b74f27d] /usr/lib/libgobject-2.0.so.0[0x7fd65b764e3b] /usr/lib/libgobject-2.0.so.0(g_signal_emit_valist+0x7e2)[0x7fd65b766432] /usr/lib/libgobject-2.0.so.0(g_signal_emit+0x83)[0x7fd65b766953] /usr/bin/gnome-keyring-daemon[0x455c6d] /usr/bin/gnome-keyring-daemon[0x43d432] /usr/bin/gnome-keyring-daemon[0x460dd2] /usr/bin/gnome-keyring-daemon[0x43b51d] /usr/bin/gnome-keyring-daemon[0x42404f] /usr/bin/gnome-keyring-daemon[0x414a93] /usr/lib/libgp11.so.0[0x7fd65c69fcf9] /usr/lib/libgp11.so.0(_gp11_call_sync+0x11e)[0x7fd65c69896e] /usr/lib/libgp11.so.0(gp11_session_find_objects_full+0x7c)[0x7fd65c6a003c] /usr/lib/libgp11.so.0(gp11_module_enumerate_objects_full+0x102)[0x7fd65c69aee2] /usr/lib/libgp11.so.0(gp11_module_enumerate_objects+0xd3)[0x7fd65c69b103] /usr/bin/gnome-keyring-daemon[0x436598] /usr/bin/gnome-keyring-daemon[0x4342d5] /usr/lib/libglib-2.0.so.0[0x7fd65b4e0ae4] /lib/libpthread.so.0[0x7fd65b2683ba] /lib/libc.so.6(clone+0x6d)[0x7fd65afd4fcd] ======= Memory map: ======== 00400000-00498000 r-xp 00000000 08:01 3730064 /usr/bin/gnome-keyring-daemon 00697000-006a0000 r--p 00097000 08:01 3730064 /usr/bin/gnome-keyring-daemon 006a0000-006a3000 rw-p 000a0000 08:01 3730064 /usr/bin/gnome-keyring-daemon 006a3000-006a5000 rw-p 006a3000 00:00 0 01041000-0110a000 rw-p 01041000 00:00 0 [heap] 7fd650000000-7fd650021000 rw-p 7fd650000000 00:00 0 7fd650021000-7fd654000000 ---p 7fd650021000 00:00 0 7fd65639c000-7fd65649d000 rw-p 7fd65639c000 00:00 0 7fd65649d000-7fd65649e000 ---p 7fd65649d000 00:00 0 7fd65649e000-7fd656c9e000 rw-p 7fd65649e000 00:00 0 7fd656c9e000-7fd656ca3000 r-xp 00000000 08:01 3752818 /lib/libnss_dns-2.9.so 7fd656ca3000-7fd656ea2000 ---p 00005000 08:01 3752818 /lib/libnss_dns-2.9.so 7fd656ea2000-7fd656ea3000 r--p 00004000 08:01 3752818 /lib/libnss_dns-2.9.so 7fd656ea3000-7fd656ea4000 rw-p 00005000 08:01 3752818 /lib/libnss_dns-2.9.so 7fd656ea4000-7fd656ea6000 r-xp 00000000 08:01 3407963 /lib/libnss_mdns4_minimal.so.2 7fd656ea6000-7fd6570a5000 ---p 00002000 08:01 3407963 /lib/libnss_mdns4_minimal.so.2 7fd6570a5000-7fd6570a6000 rw-p 00001000 08:01 3407963 /lib/libnss_mdns4_minimal.so.2 7fd6570a6000-7fd6570a8000 r-xp 00000000 08:01 3407918 /lib/libkeyutils-1.2.so 7fd6570a8000-7fd6572a7000 ---p 00002000 08:01 3407918 /lib/libkeyutils-1.2.so 7fd6572a7000-7fd6572a8000 r--p 00001000 08:01 3407918 /lib/libkeyutils-1.2.so 7fd6572a8000-7fd6572a9000 rw-p 00002000 08:01 3407918 /lib/libkeyutils-1.2.so 7fd6572a9000-7fd6572b0000 r-xp 00000000 08:01 2179244 /usr/lib/libkrb5support.so.0.1 7fd6572b0000-7fd6574af000 ---p 00007000 08:01 2179244 /usr/lib/libkrb5support.so.0.1 7fd6574af000-7fd6574b0000 r--p 00006000 08:01 2179244 /usr/lib/libkrb5support.so.0.1 7fd6574b0000-7fd6574b1000 rw-p 00007000 08:01 2179244 /usr/lib/libkrb5support.so.0.1 7fd6574b1000-7fd6574d4000 r-xp 00000000 08:01 2179241 /usr/lib/libk5crypto.so.3.1 7fd6574d4000-7fd6576d3000 ---p 00023000 08:01 2179241 /usr/lib/libk5crypto.so.3.1 7fd6576d3000-7fd6576d5000 r--p 00022000 08:01 2179241 /usr/lib/libk5crypto.so.3.1 7fd6576d5000-7fd6576d6000 rw-p 00024000 08:01 2179241 /usr/lib/libk5crypto.so.3.1 7fd6576d6000-7fd6576ed000 r-xp 00000000 08:01 3407891 /lib/libz.so.1.2.3.3 7fd6576ed000-7fd6578ec000 ---p 00017000 08:01 3407891 /lib/libz.so.1.2.3.3 7fd6578ec000-7fd6578ed000 r--p 00016000 08:01 3407891 /lib/libz.so.1.2.3.3 7fd6578ed000-7fd6578ee000 rw-p 00017000 08:01 3407891 /lib/libz.so.1.2.3.3 7fd6578ee000-7fd657991000 r-xp 00000000 08:01 3728483 /usr/lib/libgnutls.so.26.4.6 7fd657991000-7fd657b90000 ---p 000a3000 08:01 3728483 /usr/lib/libgnutls.so.26.4.6 7fd657b90000-7fd657b9a000 r--p 000a2000 08:01 3728483 /usr/lib/libgnutls.so.26.4.6 7fd657b9a000-7fd657b9b000 rw-p 000ac000 08:01 3728483 /usr/lib/libgnutls.so.26.4.6 7fd657b9b000-7fd657baf000 r-xp 00000000 08:01 3752825 /lib/libresolv-2.9.so 7fd657baf000-7fd657daf000 ---p 00014000 08:01 3752825 /lib/libresolv-2.9.so 7fd657daf000-7fd657db0000 r--p 00014000 08:01 3752825 /lib/libresolv-2.9.so 7fd657db0000-7fd657db1000 rw-p 00015000 08:01 3752825 /lib/libresolv-2.9.so 7fd657db1000-7fd657db3000 rw-p 7fd657db1000 00:00 0 7fd657db3000-7fd657dc9000 r-xp 00000000 08:01 3752816 /lib/libnsl-2.9.so 7fd657dc9000-7fd657fc9000 ---p 00016000 08:01 3752816 /lib/libnsl-2.9.so 7fd657fc9000-7fd657fca000 r--p 00016000 08:01 3752816 /lib/libnsl-2.9.so 7fd657fca000-7fd657fcb000 rw-p 00017000 08:01 3752816 /lib/libnsl-2.9.so 7fd657fcb000-7fd657fcd000 rw-p 7fd657fcb000 00:00 0 7fd657fcd000-7fd657ff9000 r-xp 00000000 08:01 2179240 /usr/lib/libgssapi_krb5.so.2.2 7fd657ff9000-7fd6581f8000 ---p 0002c000 08:01 2179240 /usr/lib/libgssapi_krb5.so.2.2 7fd6581f8000-7fd6581f9000 r--p 0002b000 08:01 2179240 /usr/lib/libgssapi_krb5.so.2.2 7fd6581f9000-7fd6581fa000 rw-p 0002c000 08:01 2179240 /usr/lib/libgssapi_krb5.so.2.2 7fd6581fa000-7fd6581fd000 r-xp 00000000 08:01 3407934 /lib/libcom_err.so.2.1 7fd6581fd000-7fd6583fc000 ---p 00003000 08:01 3407934 /lib/libcom_err.so.2.1 7fd6583fc000-7fd6583fd000 r--p 00002000 08:01 3407934 /lib/libcom_err.so.2.1 7fd6583fd000-7fd6583fe000 rw-p 00003000 08:01 3407934 /lib/libcom_err.so.2.1 7fd6583fe000-7fd658496000 r-xp 00000000 08:01 2179243 /usr/lib/libkrb5.so.3.3 7fd658496000-7fd658695000 ---p 00098000 08:01 2179243 /usr/lib/libkrb5.so.3.3 7fd658695000-7fd658698000 r--p 00097000 08:01 2179243 /usr/lib/libkrb5.so.3.3 7fd658698000-7fd658699000 rw-p 0009a000 08:01 2179243 /usr/lib/libkrb5.so.3.3 7fd658699000-7fd6586b2000 r-xp 00000000 08:01 3727550 /usr/lib/libsasl2.so.2.0.22 7fd6586b2000-7fd6588b1000 ---p 00019000 08:01 3727550 /usr/lib/libsasl2.so.2.0.22 7fd6588b1000-7fd6588b2000 r--p 00018000 08:01 3727550 /usr/lib/libsasl2.so.2.0.22 7fd6588b2000-7fd6588b3000 rw-p 00019000 08:01 3727550 /usr/lib/libsasl2.so.2.0.22 7fd6588b3000-7fd6588c1000 r-xp 00000000 08:01 3729053 /usr/lib/liblber-2.4.so.2.4.1 7fd6588c1000-7fd658ac0000 ---p 0000e000 08:01 3729053 /usr/lib/liblber-2.4.so.2.4.1 7fd658ac0000-7fd658ac1000 r--p 0000d000 08:01 3729053 /usr/lib/liblber-2.4.so.2.4.1 7fd658ac1000-7fd658ac2000 rw-p 0000e000 08:01 3729053 /usr/lib/liblber-2.4.so.2.4.1 7fd658ac2000-7fd658b06000 r-xp 00000000 08:01 3729138 /usr/lib/libldap_r-2.4.so.2.4.1 7fd658b06000-7fd658d06000 ---p 00044000 08:01 3729138 /usr/lib/libldap_r-2.4.so.2.4.1 7fd658d06000-7fd658d07000 r--p 00044000 08:01 3729138 /usr/lib/libldap_r-2.4.so.2.4.1 7fd658d07000-7fd658d09000 rw-p 00045000 08:01 3729138 /usr/lib/libldap_r-2.4.so.2.4.1 7fd658d09000-7fd658d0b000 rw-p 7fd658d09000 00:00 0 7fd658d0b000-7fd658d1f000 r-xp 00000000 08:01 3408024 /lib/libnss_ldap-2.8.so 7fd658d1f000-7fd658f1e000 ---p 00014000 08:01 3408024 /lib/libnss_ldap-2.8.so 7fd658f1e000-7fd658f1f000 r--p 00013000 08:01 3408024 /lib/libnss_ldap-2.8.so 7fd658f1f000-7fd658f20000 rw-p 00014000 08:01 3408024 /lib/libnss_ldap-2.8.so 7fd658f20000-7fd658f2b Other information: In auth.log: Jul 13 15:54:36 bruticus gnome-keyring-daemon[7855]: *** glibc detected *** /usr/bin/gnome-keyring-daemon: free(): invalid pointer: 0x00007f6ff5292098 *** apt-cache policy gnome-keyring gnome-keyring: Installed: 2.26.1-0ubuntu1 Candidate: 2.26.1-0ubuntu1 Note 64bit desktop running Jaunty (current updates): Linux 2.6.28-13-generic #45-Ubuntu SMP Tue Jun 30 22:12:12 UTC 2009 x86_64 GNU/Linux Description: Ubuntu 9.04 Release: 9.04 Tried the latest git version - could not reproduce problem. Original ubuntu bug posted at https://bugs.launchpad.net/ubuntu/+source/gnome-keyring/+bug/398669
I'd like to research and find this problem. Could you run gnome-keyring-daemon under valgrind (instead of gdb)? You'd run something like: # valgrind /usr/bin/gnome-keyring-daemon --foreground And then paste the environment info into another terminal, ssh, and post the valgrind output in this bug report.
Created attachment 138877 [details] valgrind output Attached valgrind output as requested. Thanks for looking at the bug.
I can confirm this problem has been fixed in gnome-keyring 2.26.3 and later: http://git.gnome.org/cgit/gnome-keyring/commit/?h=gnome-2-26&id=0c5d330655fff930a0afedc426254bca7922f1b0 *** This bug has been marked as a duplicate of 586192 ***
I've fixed several memory leaks highlighted by your valgrind trace. Thanks! commit 767bac01f7800d26553af73dc28c0f4ee9877416 Author: Stef Walter <stef@memberwebs.com> Date: Tue Jul 21 14:04:49 2009 +0000 Fix a couple more minor memory leaks. Fix memory leaks highlighted by the valgrind trace on bug #588443