[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

gpg-agent password prompt hangs since r1794166+r1795087

From: Daniel Shahaf <d.s_at_daniel.shahaf.name>
Date: Fri, 28 Sep 2018 22:48:09 +0000

When I run:
.
    % ./subversion/svn/svn mkdir -qmm https://dist.apache.org/repos/dist/test
.
it hangs with no output, until I «pkill pinentry» from another terminal,
at which point I get the built-in password prompt.

I bisected this to the gpg-agent changes in r1794166+r1795087 [1]: in r1794165
I get a password prompt immediately, whereas in r1794166 + 'svn merge -c r1795087'
I get the hang.

My system has gpg-agent version 2.1.18-8~deb9u2 (OS package, Debian stretch).

Haven't looked beyond this.

Cheers,

Daniel

[1]
> ------------------------------------------------------------------------
> r1794166 | jamessan | 2017-05-06 17:36:16 +0000 (Sat, 06 May 2017) | 13 lines
> Changed paths:
> M /subversion/trunk/subversion/libsvn_subr/gpg_agent.c
>
> Find gpg-agent socket using gpgconf, if possible.
>
> This allows detection of socket with Gnupg >= 2.1.13, which changed the default
> socket path to (/var)/run/user/UID/gnupg
>
> * subversion/libsvn_subr/gpg_agent.c
> (find_gpgconf_agent_socket): new function to find gpg-agent socket using
> gpgconf
> (find_running_gpg_agent): use find_gpgconf_agent_socket to detect socket when
> possible.
>
> Patch by: Lukas Jirkovsky <l.jirkovsky{_AT_}gmail.com>
>
> ------------------------------------------------------------------------
> r1795087 | jamessan | 2017-05-14 05:33:51 +0000 (Sun, 14 May 2017) | 15 lines
> Changed paths:
> M /subversion/trunk/subversion/libsvn_subr/gpg_agent.c
>
> Search for gpg-agent sockets in (/var)/run.
>
> This reverts executing gpgconf to find the socket, as implemented in r1794166.
> Instead, follow mostly the same procedure for socket lookup as GPG. GPG's
> hashing of non-default $GNUPGHOME to use as a portion of the path under
> (/var)/run is not (yet) done, since it relies on implementing z-base-32
> encoding.
>
> * subversion/libsvn_subr/gpg_agent.c
> (find_gpgconf_agent_socket): Removed function which ran gpgconf ...
> (find_gpg_agent_socket): ... and added one that performs the various checks
> to determine where the user's gpg-agent socket resides.
> (find_running_gpg_agent): Replace the socket lookup with a call to
> find_gpg_agent_socket.
>
> ------------------------------------------------------------------------
Received on 2018-09-29 00:48:22 CEST

This is an archived mail posted to the Subversion Dev mailing list.

This site is subject to the Apache Privacy Policy and the Apache Public Forum Archive Policy.