User Details
- User Since
- Mar 27 2017, 4:48 PM (404 w, 5 d)
- Availability
- Available
Sep 29 2015
Sorry, I spoke too soon on that last message, the bug was still there, I was
just running the agent at version 2.1.7... not awake yet.
Anyway, your patch solved the issue of not being able to add new keys to the
agent via ssh-add, though it may have raised another issue.
I successfully added a new key to the agent, then I removed it from the
ssh-control file and added it again. When trying to readd it after restarting
the agent, it did not show a password prompt to set the password. Instead it
returned a successful message without actually adding the key to the agent.
% ssh-add foo Identity added: foo (foo)
Sep 25 2015
backtrace without the arch patch, for RSA key
#0 ssh_identity_register (confirm=0, ttl=0, key=0x7ff366864800,
spec=0x7ff36577adb0, ctrl=0x14e0da0) at command-ssh.c:3112
#1 ssh_handler_add_identity (ctrl=0x14e0da0, request=<optimized out>,
response=0x7ff360004d20) at command-ssh.c:3247
#2 0x0000000000417948 in ssh_request_process (stream_sock=0x7ff3600009c0,
ctrl=0x14e0da0) at command-ssh.c:3513
#3 start_command_handler_ssh (ctrl=ctrl@entry=0x14e0da0, sock_client=<optimized
out>) at command-ssh.c:3619
#4 0x0000000000409c3b in start_connection_thread_ssh (arg=0x14e0da0) at
gpg-agent.c:2278
#5 0x00007ff365d3ee5c in ?? () from /usr/lib/libnpth.so.0
#6 0x00007ff365b274a4 in start_thread () from /usr/lib/libpthread.so.0
#7 0x00007ff36586513d in clone () from /usr/lib/libc.so.6
This patch was applied to the build
https://projects.archlinux.org/svntogit/packages.git/tree/trunk/ssh-ed25519.patch?h=packages/gnupg
Here is a gdb backtrace of the segfault
GNU gdb (GDB) 7.10
Copyright (C) 2015 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-unknown-linux-gnu".
Type "show configuration" for configuration details.
For bug reporting instructions, please see:
http://www.gnu.org/software/gdb/bugs/.
Find the GDB manual and other documentation resources online at:
http://www.gnu.org/software/gdb/documentation/.
For help, type "help".
Type "apropos word" to search for commands related to "word"...
Reading symbols from /usr/bin/gpg-agent...done.
[New LWP 7934]
[New LWP 7066]
warning: Could not load shared library symbols for linux-vdso.so.1.
Do you need "set solib-search-path" or "set sysroot"?
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/usr/lib/libthread_db.so.1".
Core was generated by `/usr/bin/gpg-agent --daemon --debug-level 99
--enable-ssh-support --log-file /h'.
Program terminated with signal SIGSEGV, Segmentation fault.
#0 ssh_identity_register (confirm=0, ttl=0, key=0x7f9a398ee800,
spec=0x7f9a38804db0, ctrl=0x11fdda0) at command-ssh.c:3114
3114 command-ssh.c: No such file or directory.
[Current thread is 1 (Thread 0x7f9a38805700 (LWP 7934))]
(gdb) bt
#0 ssh_identity_register (confirm=0, ttl=0, key=0x7f9a398ee800,
spec=0x7f9a38804db0, ctrl=0x11fdda0) at command-ssh.c:3114
#1 ssh_handler_add_identity (ctrl=0x11fdda0, request=<optimized out>,
response=0x7f9a34004d20) at command-ssh.c:3249
#2 0x0000000000417948 in ssh_request_process (stream_sock=0x7f9a340009c0,
ctrl=0x11fdda0) at command-ssh.c:3515
#3 start_command_handler_ssh (ctrl=ctrl@entry=0x11fdda0, sock_client=<optimized
out>) at command-ssh.c:3621
#4 0x0000000000409c3b in start_connection_thread_ssh (arg=0x11fdda0) at
gpg-agent.c:2278
#5 0x00007f9a38dc8e5c in ?? () from /usr/lib/libnpth.so.0
#6 0x00007f9a38bb14a4 in start_thread () from /usr/lib/libpthread.so.0
#7 0x00007f9a388ef13d in clone () from /usr/lib/libc.so.6
It seems this is related to T2096 but the key in question here is rsa, not
ed25519. Downgrading to 2.1.7 worked for me as well.