[pkg-gnupg-maint] Bug#841437: gnupg-agent: --supervised segfaults immediately

Jindřich Makovička makovick at gmail.com
Thu Oct 20 16:46:10 UTC 2016


Package: gnupg-agent
Version: 2.1.15-4

Hi,

gnupg-agent --supervised in Debian Sid now crashes immediately on startup,
which makes it unusable with systemd.

Backtrace from the binary with debug symbols below:

$ gdb ./gpg-agent
GNU gdb (Debian 7.11.1-2) 7.11.1
Copyright (C) 2016 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".
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 ./gpg-agent...done.
(gdb) r --supervised
Starting program: /home2/henry/tmp/gpg2/gnupg2-2.1.15/build/agent/gpg-agent
--supervised
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
gpg-agent (GnuPG) 2.1.15 starting in supervised mode.
no LISTEN_PID environment variable found in --supervised mode (ignoring)
no LISTEN_FDS or LISTEN_FDNAMES environment variables found in --supervised
mode (assuming 1 active descriptor)
listening on: std=3 extra=-1 browser=-1 ssh=-1

Program received signal SIGSEGV, Segmentation fault.
strrchr () at ../sysdeps/x86_64/strrchr.S:32
32 ../sysdeps/x86_64/strrchr.S: No such file or directory.
(gdb) bt
#0  strrchr () at ../sysdeps/x86_64/strrchr.S:32
#1  0x00005555555615e7 in handle_connections (listen_fd=3,
listen_fd_extra=-1, listen_fd_browser=-1, listen_fd_ssh=-1) at
../../agent/gpg-agent.c:2825
#2  0x000055555555e3fe in main (argc=<optimized out>, argv=<optimized out>)
at ../../agent/gpg-agent.c:1504
(gdb) l
27 in ../sysdeps/x86_64/strrchr.S
(gdb) frame 1
#1  0x00005555555615e7 in handle_connections (listen_fd=3,
listen_fd_extra=-1, listen_fd_browser=-1, listen_fd_ssh=-1) at
../../agent/gpg-agent.c:2825
2825      char *slash = strrchr (socket_name, '/');
(gdb) l
2820              strerror (errno));
2821  else
2822    {
2823      /* We need to watch the directory for the file becuase there
2824       * won't be an IN_DELETE_SELF for a socket file.  */
2825      char *slash = strrchr (socket_name, '/');
2826      log_assert (slash && slash[1]);
2827      *slash = 0;
2828      if (inotify_add_watch (my_inotify_fd, socket_name, IN_DELETE) ==
-1)
2829        {
(gdb) print socket_name
$1 = 0x0

Regards, Jindrich
-- 
Jindřich Makovička
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.alioth.debian.org/pipermail/pkg-gnupg-maint/attachments/20161020/2bb8372b/attachment.html>


More information about the pkg-gnupg-maint mailing list