Page MenuHome GnuPG
Feed Advanced Search

Apr 4 2017

marcus merged T1190: gpg-agent asks same passphrase multiple times when subsequent requests are made before first request's passphrase is entered into T1109: Pinentry and cache update race.
Apr 4 2017, 3:01 PM · Info Needed, Bug Report, gnupg, gpgagent
gniibe added a project to T3027: gpg-agent crash on macOS Sierra triggerd by ssh: In Progress.
Apr 4 2017, 2:56 AM · Bug Report, gpgagent, gnupg
gniibe reopened T3027: gpg-agent crash on macOS Sierra triggerd by ssh as "Open".
Apr 4 2017, 2:54 AM · Bug Report, gpgagent, gnupg
gniibe closed T3027: gpg-agent crash on macOS Sierra triggerd by ssh as Resolved.

In 2.1.19, gpg-agent uses getpeerucred for macOS. I changed it (since it seemed not working). In 2.1.20, gpg-agent now uses getsockopt with LOCAL_PEERPID.
It seems for me that the crash occurs by ucred_free. If this is the case, 2.1.20 fixes this issue.

Apr 4 2017, 2:54 AM · Bug Report, gpgagent, gnupg

Mar 30 2017

marcus moved T3027: gpg-agent crash on macOS Sierra triggerd by ssh from In Progress to Backlog on the gnupg board.
Mar 30 2017, 7:36 PM · Bug Report, gpgagent, gnupg
marcus moved T3027: gpg-agent crash on macOS Sierra triggerd by ssh from Backlog to In Progress on the gnupg board.
Mar 30 2017, 7:35 PM · Bug Report, gpgagent, gnupg
admin created gpgagent.
Mar 30 2017, 6:42 PM
landro added projects to T3027: gpg-agent crash on macOS Sierra triggerd by ssh: MacOS, ssh, gnupg, gnupg (gpg21), gpgagent, Bug Report.
Mar 30 2017, 3:22 PM · Bug Report, gpgagent, gnupg
landro set Version to 2.1.19 on T3027: gpg-agent crash on macOS Sierra triggerd by ssh.
Mar 30 2017, 3:22 PM · Bug Report, gpgagent, gnupg

Mar 24 2017

werner added a project to T2964: dirmngr and gpg-agent should work automatically even when GNUPGHOME is larger than sun_path: In Progress.
Mar 24 2017, 4:52 PM · Stalled, scd, gpgagent, Bug Report, gnupg, dirmngr
werner added a comment to T2964: dirmngr and gpg-agent should work automatically even when GNUPGHOME is larger than sun_path.

We also have a discussion of the mailing list. It does currently not make sense
to continue here.

The problem of NFS mounted home directories is _real_ and we have a solution for
this which is better than the old redirection hack.

The problem with too long socket names is not severe and has been around for
decades (for other software and 14 years for GnuPG). There are workaround and
/run/user also solves this.

I proposed a change which does not even require --create-socketdir. There was
no comment on this and thus I will push that now so that we can do a real life test.

Mar 24 2017, 4:52 PM · Stalled, scd, gpgagent, Bug Report, gnupg, dirmngr
justus added a comment to T2964: dirmngr and gpg-agent should work automatically even when GNUPGHOME is larger than sun_path.

Justus: I told you several times that we are not going to change working code
for no good reason.

Except that it is not working. If it was working, then
06f1f163e96f1039304fd3cf565cf9de1ca45849
would not be necessary.

Even if your hack (I call it a hack because it does not
work with getsockname)

1/ Yes it does. It returns precisely the path that was used in bind.

2/ We only use getsockname on sockets that were given us by a service manager
like systemd, and thus those sockets would be unaffected by "the hack".

would make it, it does not solve the major problem: The
inability of creating sockets on certain file systems. THAT is the major reason
why we moved to /var/run.

Please stop conflating these things. This bug is about "dirmngr and gpg-agent
should work automatically even when GNUPGHOME is larger than sun_path". It is
not about NFS or FAT or something.

Mar 24 2017, 1:44 PM · Stalled, scd, gpgagent, Bug Report, gnupg, dirmngr

Mar 21 2017

werner added a comment to T2964: dirmngr and gpg-agent should work automatically even when GNUPGHOME is larger than sun_path.

Justus: I told you several times that we are not going to change working code
for no good reason. Even if your hack (I call it a hack because it does not
work with getsockname) would make it, it does not solve the major problem: The
inability of creating sockets on certain file systems. THAT is the major reason
why we moved to /var/run.

Mar 21 2017, 7:25 PM · Stalled, scd, gpgagent, Bug Report, gnupg, dirmngr
justus added a comment to T2964: dirmngr and gpg-agent should work automatically even when GNUPGHOME is larger than sun_path.

The whole IPC thing is pretty complex and adding a non-standard hack as proposed
by Justus will for sure cause breakage on some platforms.

I'm not sure why you call it a hack. I've been looking at POSIX, [0] introduces
pathname resolution, and the terms 'relative path' and 'absolute path'.

0: http://pubs.opengroup.org/onlinepubs/9699919799/basedefs/V1_chap04.html#tag_04_13

Neither the page for connect [1], nor the one for bind [2] state that the path
used to connect/bind unix sockets must be an absolute path.

1: http: / / pubs.opengroup.org/onlinepubs/9699919799/functions/connect.html#
2: http: / / pubs.opengroup.org/onlinepubs/9699919799/functions/bind.html#

Furthermore, my test across a wide range of UNIX implementations did not show
any issues with using relative paths.

Mar 21 2017, 3:12 PM · Stalled, scd, gpgagent, Bug Report, gnupg, dirmngr

Mar 14 2017

werner added a comment to T2964: dirmngr and gpg-agent should work automatically even when GNUPGHOME is larger than sun_path.

I agreed in T2964 (wk on Mar 01 2017, 07:31 AM / Roundup) to auto create socket directories. I would like to do that
only for a tmpfs but we can also try to do this always. Adding a inotify watch
to remove the directory is more complex and I am not sure whether this is really
needed. The other thing is simple and we could do that for 2.1.20.

The whole IPC thing is pretty complex and adding a non-standard hack as proposed
by Justus will for sure cause breakage on some platforms.

Yes, we should document /var/run recommendations in the README. I will do that
for the next release.

Mar 14 2017, 12:06 PM · Stalled, scd, gpgagent, Bug Report, gnupg, dirmngr
dkg added a comment to T2964: dirmngr and gpg-agent should work automatically even when GNUPGHOME is larger than sun_path.

This bug report simply asks to solve the generic problem of GNUPGHOME being
larger than sun_path. Justus's proposed mechanism is only one way of solving
that problem.

Another proposed mechanism is what i originally proposed in T2964 (dkg on Feb 17 2017, 01:52 AM / Roundup), which
*does* address remote filesystems and re-mounted filesystems.

I don't undertstand the critique about the code not yet being mature. Code
doesn't become mature by not being written, it needs to be written first and
then tested in order to become mature.

Lastly, i think if we expect that /run/user/$(id -u)/ is a "simple dependency"
for building other software, we need to make that expectation explicit someplace
reasonable (e.g. doc/HACKING or something similar)

Mar 14 2017, 4:39 AM · Stalled, scd, gpgagent, Bug Report, gnupg, dirmngr

Mar 6 2017

werner added a comment to T2964: dirmngr and gpg-agent should work automatically even when GNUPGHOME is larger than sun_path.

My main reasons why I don't want to consider this now are:

  • That code is not written and thus will not be matured.
  • It does not solve the major problem why we moved to /var/run, namely remote file systems and avoidance of possible re-mounted file systems
  • The claim that /var/run/user does not exists is not valid, because that is a simple dependency for building the software or using it with non-common setups (remot, long $HOME). Thus an admin will anyway be on duty and adding a few lines to /etc/rc.local is not a bug deal.

FWIW, we may try this in 2.3 see T2987.

Mar 6 2017, 12:29 PM · Stalled, scd, gpgagent, Bug Report, gnupg, dirmngr
justus added a comment to T2964: dirmngr and gpg-agent should work automatically even when GNUPGHOME is larger than sun_path.

Werner does not think that this is a problem and does not want me to spend time
on this.

Mar 6 2017, 11:28 AM · Stalled, scd, gpgagent, Bug Report, gnupg, dirmngr
justus added a comment to T2964: dirmngr and gpg-agent should work automatically even when GNUPGHOME is larger than sun_path.

getsockname is only used to recover the paths of sockets bound by a supervisor
like systemd. So unless systemd starts doing the same trick that I propose,
there is no problem.

Mar 6 2017, 10:38 AM · Stalled, scd, gpgagent, Bug Report, gnupg, dirmngr

Mar 2 2017

justus added a comment to T2964: dirmngr and gpg-agent should work automatically even when GNUPGHOME is larger than sun_path.

From what I've seen there is no variation in getsockname, it just returns
whatever path is passed to bind. I don't understand the need for getsockname
tbh, because we are the ones that bind the socket in the first place.

(The only variation seems to be that the function is broken on Hurd...).

Mar 2 2017, 11:45 AM · Stalled, scd, gpgagent, Bug Report, gnupg, dirmngr

Mar 1 2017

dkg added a comment to T2964: dirmngr and gpg-agent should work automatically even when GNUPGHOME is larger than sun_path.

Justus, thanks for this work, it's great!. If we can solve the problem by doing
more clever socket(7) manipulation, that would be a big win.

How do you propose dealing with the getsockname() variations? or should we just
forbid the use of getsockname() entirely in the gnupg codebase?

Mar 1 2017, 7:24 PM · Stalled, scd, gpgagent, Bug Report, gnupg, dirmngr
justus added a comment to T2964: dirmngr and gpg-agent should work automatically even when GNUPGHOME is larger than sun_path.

dkg, I understand that GnuPG does not work with such a homedir, however, it is
not the act of creating the socket that is problematic. In fact, both
bind(2)ing and connect(2)ing is ok if one uses relative paths, as demonstrated
by the test program I have attached here.

Here is the program binding and connecting to a socket with an absolute path
length of ~10 * sizeof sockaddr_un.sun_path:

System: OpenBSD:6.0:GENERIC.MP#1992
sizeof addr.sun_path: 104
Running test with strlen (cwd): 22, name: '/tmp/test-unix-sockets/socket'

getsockname returned '/tmp/test-unix-sockets/socket', addrlen: 106

Running test with strlen (cwd): 22, name: 'socket'

getsockname returned 'socket', addrlen: 106

Running test with strlen (cwd): 126, name: 'socket'

getsockname returned 'socket', addrlen: 106

Running test with strlen (cwd): 1062, name: 'socket'

  getsockname returned 'socket', addrlen: 106

This works on all Unices that I have access to. I've asked on gnupg-devel@ for
people to run it elsewhere.

I understand that '--create-socketdir' solves problems besides this one. But I
disagree with the statement that our handling of socket paths is unproblematic
because --create-socketdir solves this problem.

Mar 1 2017, 3:10 PM · Stalled, scd, gpgagent, Bug Report, gnupg, dirmngr
justus added a comment to T2964: dirmngr and gpg-agent should work automatically even when GNUPGHOME is larger than sun_path.

Mar 1 2017, 3:10 PM · Stalled, scd, gpgagent, Bug Report, gnupg, dirmngr
werner added a comment to T2964: dirmngr and gpg-agent should work automatically even when GNUPGHOME is larger than sun_path.

Can we test whether /run is mounted on a tmpfs ?
should we assume that /run is always on a tmpfs but /var/run is a classical Unix
w/o a tmpfs? Or is it better to have a configure option.

I can imagine to agree to auto-create the directory on a tmpfs.

Mar 1 2017, 7:31 AM · Stalled, scd, gpgagent, Bug Report, gnupg, dirmngr
dkg added a comment to T2964: dirmngr and gpg-agent should work automatically even when GNUPGHOME is larger than sun_path.

Yes, notmuch decided that they needed to workaround the situation anyway,
because they're in an environment that doesn't create the standard per-user
rundir. That doesn't seem like a great argument that gpg should also fail in
environments where the standard per-user rundir is available. I can demonstrate
a number of environments where gpg or its daemons will fail, but i don't think
any of them justify forcing gpg or its daemons to *also* fail when those
environments aren't present.

In answer to your nitpick, here is evidence that gpg's daemons cannot create
their sockets when the GNUPGHOME is too long:

1 dkg@alice:~$ mkdir -m 0700
/home/dkg/tmp/very-very-very-very-very-very-very-very-very-very-very-very-very-very-very-very-very-very-very-very-very-very-very-very-very-very-very-very-very-very-very-very-very-very-very-very-very-very-very-very-very-very-long
0 dkg@alice:~$
GNUPGHOME=/home/dkg/tmp/very-very-very-very-very-very-very-very-very-very-very-very-very-very-very-very-very-very-very-very-very-very-very-very-very-very-very-very-very-very-very-very-very-very-very-very-very-very-very-very-very-very-long
gpgconf --launch dirmngr
gpgconf: error running '/usr/bin/gpg-connect-agent': exit status 1
gpgconf: error running '/usr/bin/gpg-connect-agent --dirmngr NOP': General error
1 dkg@alice:~$

Mar 1 2017, 2:02 AM · Stalled, scd, gpgagent, Bug Report, gnupg, dirmngr

Feb 28 2017

justus added projects to T2964: dirmngr and gpg-agent should work automatically even when GNUPGHOME is larger than sun_path: gnupg (gpg22), gpgagent, scd.
Feb 28 2017, 4:39 PM · Stalled, scd, gpgagent, Bug Report, gnupg, dirmngr

Feb 13 2017

werner added a comment to T2946: gpg-agent should be able to terminate when all its state expires.

The whole point of a daemon is that is idling in the background to wait for work.

A more useful feature would be to flush the passphrase cache when the user is
not anymore logged in. But for Debian this has already been done by --supervised.

Feb 13 2017, 4:14 PM · gnupg, Debian, gpgagent, Feature Request

Feb 8 2017

dkg added a comment to T2946: gpg-agent should be able to terminate when all its state expires.

I agree about that race condition being an important thing to consider, but i
think it's orthogonal to whether the process is self-terminating.

That is: we need to consider that race condition even in the case of deliberate
shutdown too, right?

Do we have a test case that involves two concurrent processes, one that tries to
stop the agent, and the other that tries to access it?

Feb 8 2017, 4:01 PM · gnupg, Debian, gpgagent, Feature Request

Feb 7 2017

justus added a comment to T2946: gpg-agent should be able to terminate when all its state expires.

One thing to look out for is a race condition between the agent deciding to shut
down, and a client trying to connect at that time, and that might lead to
intermittent failures. It may be doable correctly, but it is something to look
out for.

The other point being raised in the bug report about older daemons hanging
around over package upgrades should be discussed in a different bug. Yes,
shutting down the daemon when idle may work around this issue sometimes, but
clearly this is not a robust solution.

Feb 7 2017, 11:04 AM · gnupg, Debian, gpgagent, Feature Request
justus set External Link to https://bugs.debian.org/853905 on T2946: gpg-agent should be able to terminate when all its state expires.
Feb 7 2017, 11:04 AM · gnupg, Debian, gpgagent, Feature Request

Feb 6 2017

dkg added projects to T2946: gpg-agent should be able to terminate when all its state expires: Feature Request, gpgagent, Debian, gnupg.
Feb 6 2017, 9:19 PM · gnupg, Debian, gpgagent, Feature Request

Jan 23 2017

werner removed a project from T2267: Fix "Invalid Parameter passed to C runtime function" warnings on Windows: Restricted Project.
Jan 23 2017, 11:14 PM · Windows 32, Windows, gnupg, gpgagent, Feature Request
werner closed T2267: Fix "Invalid Parameter passed to C runtime function" warnings on Windows as Resolved.
Jan 23 2017, 11:14 PM · Windows 32, Windows, gnupg, gpgagent, Feature Request

Jan 6 2017

werner added projects to T2267: Fix "Invalid Parameter passed to C runtime function" warnings on Windows: Windows, Restricted Project, Windows 32.
Jan 6 2017, 6:50 PM · Windows 32, Windows, gnupg, gpgagent, Feature Request
werner added a comment to T2267: Fix "Invalid Parameter passed to C runtime function" warnings on Windows.

Actually we do not need that function on Windows. It is on Unix called at
startup to get a list of files not to close. On Windows we do not need to close
the files before a CreateProcess and thus close_all_fds is a dummy anyway.

I removed calling this function under Windows. To go into 2.1.18.

Jan 6 2017, 6:50 PM · Windows 32, Windows, gnupg, gpgagent, Feature Request

Dec 17 2016

Pazuzu closed T2857: gpg-agent crashes regularly, out of core in secure memory allocations as Resolved.
Dec 17 2016, 4:00 PM · gnupg (gpg22), Bug Report, gnupg, gpgagent
Pazuzu reopened T2857: gpg-agent crashes regularly, out of core in secure memory allocations as "Open".
Dec 17 2016, 4:00 PM · gnupg (gpg22), Bug Report, gnupg, gpgagent
Pazuzu added a comment to T2857: gpg-agent crashes regularly, out of core in secure memory allocations.

The problem still occured after the update of Libgcrypt, but Im pretty sure now
that I determine the origin of the problem. In the end it is somehow my fault: By
time I got more and more email accounts which are synchronized with offlineimap and
the passwords for each account are encrypted with gpg.
Offlineimap offers an option for multitheading, which synchronize the accounts in a
prallel manner. By changing to a strict serialized synchronistaion the problem
seems to vanish. My guess is, it was simply to much at once.
For those, who encounter the same problem try the '-1' option of offlineimap.

Thanks for your time and work (in general)!

Dec 17 2016, 4:00 PM · gnupg (gpg22), Bug Report, gnupg, gpgagent

Dec 9 2016

werner closed T2857: gpg-agent crashes regularly, out of core in secure memory allocations as Resolved.
Dec 9 2016, 4:04 PM · gnupg (gpg22), Bug Report, gnupg, gpgagent
werner removed a project from T2857: gpg-agent crashes regularly, out of core in secure memory allocations: Restricted Project.
Dec 9 2016, 4:04 PM · gnupg (gpg22), Bug Report, gnupg, gpgagent
werner added a comment to T2857: gpg-agent crashes regularly, out of core in secure memory allocations.

I just released Libgcrypt 1.7.4 - whcih should fix that bug.

Dec 9 2016, 4:04 PM · gnupg (gpg22), Bug Report, gnupg, gpgagent

Dec 7 2016

werner added a project to T2857: gpg-agent crashes regularly, out of core in secure memory allocations: Restricted Project.
Dec 7 2016, 5:39 PM · gnupg (gpg22), Bug Report, gnupg, gpgagent
werner removed a project from T2857: gpg-agent crashes regularly, out of core in secure memory allocations: In Progress.
Dec 7 2016, 5:39 PM · gnupg (gpg22), Bug Report, gnupg, gpgagent
werner added a comment to T2857: gpg-agent crashes regularly, out of core in secure memory allocations.

Backported to LIBGCRYPT-1-7-BRANCH

Dec 7 2016, 5:39 PM · gnupg (gpg22), Bug Report, gnupg, gpgagent
werner added a comment to T2857: gpg-agent crashes regularly, out of core in secure memory allocations.

I have now pushed a change to Libgcrypt master to implement auto-extending of
secre memory pools. Commit b6870cf but there are two cother commits which this
is based upon. My test shows that I can now decrypt a message encrypted to the
test-hugekey.key.

I will port this back to Libgcrypt 1.7.

Dec 7 2016, 5:07 PM · gnupg (gpg22), Bug Report, gnupg, gpgagent

Dec 6 2016

werner added a project to T2857: gpg-agent crashes regularly, out of core in secure memory allocations: In Progress.
Dec 6 2016, 5:50 PM · gnupg (gpg22), Bug Report, gnupg, gpgagent
werner added a comment to T2857: gpg-agent crashes regularly, out of core in secure memory allocations.

I will try out the idea of extending the secmem pool even if that means no mlock.

Dec 6 2016, 5:50 PM · gnupg (gpg22), Bug Report, gnupg, gpgagent
dkg added a comment to T2857: gpg-agent crashes regularly, out of core in secure memory allocations.

ah right, "ulimit -l" says 64 (kbytes) on my Linux system as well. According to
mlock(2) that's since kernel 2.6.9.

So i think it's worth adopting the supplied patch as a workaround at least (i
can confirm that it resolves the specific use case described in T2857 (dkg on Dec 05 2016, 05:47 PM / Roundup)), and i
agree with you that we should extend libgcrypt to extend secure memory allocation.

it's not clear to me that swap is outside the trust boundary anyway these days,
and modern systems should prefer encrypted swap where possible.

Dec 6 2016, 5:49 PM · gnupg (gpg22), Bug Report, gnupg, gpgagent
werner added a comment to T2857: gpg-agent crashes regularly, out of core in secure memory allocations.

The secmem has two goals:

  • Avoid swapping out tehse pages. Thus the mlock.
  • Making sure that on free the memory is zeroized.

mlock requires root privileges and thus a special init sequence is required
(install as setuid(root) and gpg-agent drops the privileges direct after
allocating and mlocking the secmem). In the old times, and probably still today
on non-Linux platforms, this is still required. However, Linux turned to
allowing any process to mlock a certain amount (64k on my box).

I tend to suggest that we extend Libgcrypt to extend the secure memory
allocation by not using mlocked memory but keeping the the seroization feature.
The second option from T2857 (wk on Dec 05 2016, 07:11 PM / Roundup).

Dec 6 2016, 5:38 PM · gnupg (gpg22), Bug Report, gnupg, gpgagent
dkg added a comment to T2857: gpg-agent crashes regularly, out of core in secure memory allocations.

is the only goal of the secure memory to keep the RAM from being written to
swap, or are there other goals of secure memory? why is it unlikely that a new
block of memory can be mlock'd? what are the consequences of the new block not
being mlock'd? will it still be treated as secure memory?

crashing in the event that we run out of secure memory is simply not acceptable
these days, especially in a model where we have persistent long-term daemons
that people expect to remain running.

Dec 6 2016, 5:18 PM · gnupg (gpg22), Bug Report, gnupg, gpgagent
dkg added a comment to T2857: gpg-agent crashes regularly, out of core in secure memory allocations.

I just posted 0001-agent-Respect-enable-large-secmem.patch to gnupg-devel:

https://lists.gnupg.org/pipermail/gnupg-devel/2016-December/032285.html

Dec 6 2016, 5:12 PM · gnupg (gpg22), Bug Report, gnupg, gpgagent
dkg added a comment to T2857: gpg-agent crashes regularly, out of core in secure memory allocations.

D400: 927_0001-agent-Respect-enable-large-secmem.patch

Dec 6 2016, 5:12 PM · gnupg (gpg22), Bug Report, gnupg, gpgagent

Dec 5 2016

werner added a comment to T2857: gpg-agent crashes regularly, out of core in secure memory allocations.

Yeah, I saw the Debian bug report. Unfortunately there is no easy
solution to this except for rejecting the use of large secret keys.

The problem here is that the big number library needs to allocate from
a limited secure memory region (32 KiB by default) and terminates on
allocation failure. I know that this is sub-optimal but we are doing
this for 19 years now. Checking for an error after each low-level big
number operation would make the code unreadable and will introduce
bugs. Ideas on what to do:

  • On secure memory allocation failure, call the out-of-memory handler which may then free other memory (or purchase new memory). This can be done in the application.
  • On secure memory allocation failure, allocate a new block of secure memory and allocate from that one. There are two disadvantages: a) It is unlikely that the new block can be mlock'd. b) A free will be a a little bit slower because it needs to check the list of secure memory blocks and not just one address range. The address range check is needed so that we can figure out whether the freed address is in the secmem range and needs to zeroed out. This requires a new Libgcrypt version, though no ABI change.
  • We have a ./configure option --enable-large-secmem which sets 64k instead of 32k aside for the secmem. This is currently only used in gpg to enable gpg's --enable-large-rsa option. Given that in 2.1 we use the gpg-agent for the secret key operations we should have the same options in gpg-agent. However, it is only a kludge, but one we once agreed upon to silence some pretty vocal experts on key size.
Dec 5 2016, 7:11 PM · gnupg (gpg22), Bug Report, gnupg, gpgagent
werner added a project to T2857: gpg-agent crashes regularly, out of core in secure memory allocations: gnupg (gpg22).
Dec 5 2016, 7:11 PM · gnupg (gpg22), Bug Report, gnupg, gpgagent
dkg added a comment to T2857: gpg-agent crashes regularly, out of core in secure memory allocations.

fwiw, i'm seeing this too, over at https://bugs.debian.org/846953 , for a user
with an insanely large (10240-bit) RSA key when it is locked with a passphrase.

I'm attaching such an example secret key (with passphrase "abc123"), and you can
trigger the crash with:

gpg --batch --yes --import test-hugekey.key
echo test | gpg -r 861A97D02D4EE690A125DCC156CC9789743D4A89

--encrypt --armor --trust-model=always --batch --yes --output data.gpg

            gpg --decrypt data.gpg

While i think it's fair to say that we need to have some limits on the sizes of
keys we can handle, gpg-agent should not crash when asked to deal with
extra-large keys, it should fail gracefully and return a sensible error code.

Dec 5 2016, 5:47 PM · gnupg (gpg22), Bug Report, gnupg, gpgagent
dkg added a comment to T2857: gpg-agent crashes regularly, out of core in secure memory allocations.

Dec 5 2016, 5:47 PM · gnupg (gpg22), Bug Report, gnupg, gpgagent

Dec 2 2016

werner added a comment to T2857: gpg-agent crashes regularly, out of core in secure memory allocations.

Another user reported the same problem on IRC. It seems it is Arch Linux
specific but we don't known for sure. The latest test with re-building
Libgcrypt w/o any special options didn't changed anything.

I need top be able to replicate the problem before I can come up with a solution.

Dec 2 2016, 9:15 AM · gnupg (gpg22), Bug Report, gnupg, gpgagent

Nov 30 2016

Pazuzu added a comment to T2857: gpg-agent crashes regularly, out of core in secure memory allocations.

Thanks for your fast reply.
Sadly I have not much time these days... but I have done what you suggested.
Honestly the log files dont tell me much. One thing I recognised is sometimes the logfiles end with "Fatal: libgcrypt
problem: out of core in secure memory" and sometimes they dont (I have not copied every log file here, this might
be to much).

This is what I got with debug memstat and the recent version of gnupg in Arch.

2016-11-30 21:18:35 gpg-agent[5516] listening on socket '/run/user/1000/gnupg/S.gpg-agent'
2016-11-30 21:18:35 gpg-agent[5517] gpg-agent (GnuPG) 2.1.15 started
2016-11-30 21:18:45 gpg-agent[5517] handler 0x7efe1d0e5700 for fd 5 started
2016-11-30 21:18:45 gpg-agent[5517] handler 0x7efe1c8e4700 for fd 6 started
2016-11-30 21:18:45 gpg-agent[5517] starting a new PIN Entry
2016-11-30 21:18:45 gpg-agent[5517] handler 0x7efe17fff700 for fd 8 started
2016-11-30 21:18:45 gpg-agent[5517] handler 0x7efe177fe700 for fd 9 started
2016-11-30 21:18:51 gpg-agent[5517] handler 0x7efe1d0e5700 for fd 5 terminated
2016-11-30 21:18:52 gpg-agent[5517] Fatal: out of core in secure memory while allocating 512 bytes

2016-11-30 21:18:52 gpg-agent[5517] Fatal: libgcrypt problem: out of core in secure memory
2016-11-30 21:18:35 gpg-agent[5516] listening on socket '/run/user/1000/gnupg/S.gpg-agent'
2016-11-30 21:18:35 gpg-agent[5517] gpg-agent (GnuPG) 2.1.15 started
2016-11-30 21:18:45 gpg-agent[5517] handler 0x7efe1d0e5700 for fd 5 started
2016-11-30 21:18:45 gpg-agent[5517] handler 0x7efe1c8e4700 for fd 6 started
2016-11-30 21:18:45 gpg-agent[5517] starting a new PIN Entry
2016-11-30 21:18:45 gpg-agent[5517] handler 0x7efe17fff700 for fd 8 started
2016-11-30 21:18:45 gpg-agent[5517] handler 0x7efe177fe700 for fd 9 started
2016-11-30 21:18:51 gpg-agent[5517] handler 0x7efe1d0e5700 for fd 5 terminated
2016-11-30 21:18:52 gpg-agent[5517] Fatal: out of core in secure memory while allocating 512 bytes

2016-11-30 21:18:52 gpg-agent[5517] Fatal: libgcrypt problem: out of core in secure memory
v2016-11-30 21:18:35 gpg-agent[5516] listening on socket '/run/user/1000/gnupg/S.gpg-agent'
2016-11-30 21:18:35 gpg-agent[5517] gpg-agent (GnuPG) 2.1.15 started
2016-11-30 21:18:45 gpg-agent[5517] handler 0x7efe1d0e5700 for fd 5 started
2016-11-30 21:18:45 gpg-agent[5517] handler 0x7efe1c8e4700 for fd 6 started
2016-11-30 21:18:45 gpg-agent[5517] starting a new PIN Entry
2016-11-30 21:18:45 gpg-agent[5517] handler 0x7efe17fff700 for fd 8 started
2016-11-30 21:18:45 gpg-agent[5517] handler 0x7efe177fe700 for fd 9 started
2016-11-30 21:18:51 gpg-agent[5517] handler 0x7efe1d0e5700 for fd 5 terminated
2016-11-30 21:18:52 gpg-agent[5517] Fatal: out of core in secure memory while allocating 512 bytes

2016-11-30 21:18:52 gpg-agent[5517] Fatal: libgcrypt problem: out of core in secure memory

This is what I got with debuging memstat and downgraded gnupg to gnupg-2.1.15-2-x86_64.pkg.tar.xz

2016-11-30 21:28:30 gpg-agent[5953] listening on socket '/run/user/1000/gnupg/S.gpg-agent'
2016-11-30 21:28:30 gpg-agent[5954] gpg-agent (GnuPG) 2.1.15 started
2016-11-30 21:28:37 gpg-agent[5954] handler 0x7fd6fedca700 for fd 5 started
2016-11-30 21:28:37 gpg-agent[5954] starting a new PIN Entry
2016-11-30 21:28:42 gpg-agent[5954] handler 0x7fd6fedca700 for fd 5 terminated
2016-11-30 21:28:47 gpg-agent[5954] handler 0x7fd6fedca700 for fd 5 started
2016-11-30 21:28:47 gpg-agent[5954] handler 0x7fd6fe5c9700 for fd 7 started
2016-11-30 21:28:47 gpg-agent[5954] handler 0x7fd6fddc8700 for fd 8 started
2016-11-30 21:28:47 gpg-agent[5954] handler 0x7fd6fd5c7700 for fd 9 started
2016-11-30 21:28:47 gpg-agent[5954] handler 0x7fd6fedca700 for fd 5 terminated
2016-11-30 21:28:47 gpg-agent[5954] handler 0x7fd6fddc8700 for fd 8 terminated
2016-11-30 21:28:47 gpg-agent[5954] handler 0x7fd6fe5c9700 for fd 7 terminated
2016-11-30 21:28:47 gpg-agent[5954] handler 0x7fd6fd5c7700 for fd 9 terminated
2016-11-30 21:29:32 gpg-agent[5954] handler 0x7fd6fe5c9700 for fd 7 started
2016-11-30 21:29:32 gpg-agent[5954] handler 0x7fd6fe5c9700 for fd 7 terminated
2016-11-30 21:30:10 gpg-agent[5954] handler 0x7fd6fe5c9700 for fd 5 started
2016-11-30 21:30:10 gpg-agent[5954] handler 0x7fd6fd5c7700 for fd 7 started
2016-11-30 21:30:10 gpg-agent[5954] handler 0x7fd6fddc8700 for fd 8 started
2016-11-30 21:30:10 gpg-agent[5954] handler 0x7fd6fedca700 for fd 9 started
2016-11-30 21:30:10 gpg-agent[5954] Fatal: out of core in secure memory while allocating 512 bytes

2016-11-30 21:30:10 gpg-agent[5954] Fatal: libgcrypt problem: out of core in secure memory

And this is what I got from gdb (I am quite unfamiliar with gdb, so maybe i done something wrong)

Reading symbols from gpg-agent...(no debugging symbols found)...done.
Attaching to program: /usr/bin/gpg-agent, process 3492
Reading symbols from /usr/lib/libgcrypt.so.20...(no debugging symbols found)...done.
Reading symbols from /usr/lib/libgpg-error.so.0...(no debugging symbols found)...done.
Reading symbols from /usr/lib/libassuan.so.0...(no debugging symbols found)...done.
Reading symbols from /usr/lib/libnpth.so.0...(no debugging symbols found)...done.
Reading symbols from /usr/lib/libpthread.so.0...(no debugging symbols found)...done.
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/usr/lib/libthread_db.so.1".
Reading symbols from /usr/lib/libc.so.6...(no debugging symbols found)...done.
Reading symbols from /lib64/ld-linux-x86-64.so.2...(no debugging symbols found)...done.
0x00007f05452cd18c in pselect () from /usr/lib/libc.so.6
(gdb) break log_fatal
Function "log_fatal" not defined.
Make breakpoint pending on future shared library load? (y or [n])
(gdb) c
Continuing.
[New Thread 0x7f053ffff700 (LWP 4687)]
[New Thread 0x7f05449ea700 (LWP 4698)]
[New Thread 0x7f053f7fe700 (LWP 4699)]
[New Thread 0x7f05451eb700 (LWP 4700)]
[Thread 0x7f053ffff700 (LWP 4687) exited]
[Thread 0x7f053f7fe700 (LWP 4699) exited]
[Thread 0x7f05451eb700 (LWP 4700) exited]
[Thread 0x7f05449ea700 (LWP 4698) exited]
[New Thread 0x7f05449ea700 (LWP 4733)]
[New Thread 0x7f05451eb700 (LWP 4745)]
[New Thread 0x7f053f7fe700 (LWP 4746)]
[New Thread 0x7f053ffff700 (LWP 4747)]
[Thread 0x7f053f7fe700 (LWP 4746) exited]
[Thread 0x7f05449ea700 (LWP 4733) exited]
[Thread 0x7f05451eb700 (LWP 4745) exited]
[Thread 0x7f053ffff700 (LWP 4747) exited]
[New Thread 0x7f053ffff700 (LWP 4775)]
[New Thread 0x7f05451eb700 (LWP 4776)]
[Thread 0x7f053ffff700 (LWP 4775) exited]

Thread 11 "gpg-agent" received signal SIGPIPE, Broken pipe.
[Switching to Thread 0x7f05451eb700 (LWP 4776)]

0x00007f054559a16d in write () from /usr/lib/libpthread.so.0

Nov 30 2016, 9:39 PM · gnupg (gpg22), Bug Report, gnupg, gpgagent
Pazuzu added a comment to T2857: gpg-agent crashes regularly, out of core in secure memory allocations.

Nov 30 2016, 9:39 PM · gnupg (gpg22), Bug Report, gnupg, gpgagent

Nov 29 2016

werner claimed T2857: gpg-agent crashes regularly, out of core in secure memory allocations.
Nov 29 2016, 2:26 PM · gnupg (gpg22), Bug Report, gnupg, gpgagent
werner added a comment to T2857: gpg-agent crashes regularly, out of core in secure memory allocations.

gpg-agent sets 32k aside for so called secure memory. It seems Libgcrypt runs
out of memory during computations with private key parameters.

Please put "debug memstat" into gpg-agent.conf which should print two lines of
info at process termination. If possible do the same with the old version and
compare.

Another thing you can do is to start gpg-agent ("gpgconf --launch gpg-agent"),
then look for its PID and attach gdb:

  $ gpg gpg-agent PID
  gdb> break log_fatal
  gdb> c

after you hit the breakpoint enter "bt".

Nov 29 2016, 2:26 PM · gnupg (gpg22), Bug Report, gnupg, gpgagent
justus renamed T2857: gpg-agent crashes regularly, out of core in secure memory allocations from gpg-agent crashes regularly to gpg-agent crashes regularly, out of core in secure memory allocations.
Nov 29 2016, 1:35 PM · gnupg (gpg22), Bug Report, gnupg, gpgagent
Pazuzu set Version to 2.1.16 on T2857: gpg-agent crashes regularly, out of core in secure memory allocations.
Nov 29 2016, 12:04 PM · gnupg (gpg22), Bug Report, gnupg, gpgagent
Pazuzu added projects to T2857: gpg-agent crashes regularly, out of core in secure memory allocations: gpgagent, gnupg, Bug Report.
Nov 29 2016, 12:04 PM · gnupg (gpg22), Bug Report, gnupg, gpgagent

Oct 13 2016

justus added a comment to T2316: ssh-add ignores keys already in private-keys-v1.d but not in sshcontrol.

John is using 2.1.14, but this bug was fixed in 2.1.15.

Oct 13 2016, 1:26 PM · gnupg, Not A Bug, Bug Report, ssh, gpgagent, gnupg (gpg21)
justus closed T2316: ssh-add ignores keys already in private-keys-v1.d but not in sshcontrol as Resolved.
Oct 13 2016, 1:26 PM · gnupg, Not A Bug, Bug Report, ssh, gpgagent, gnupg (gpg21)

Oct 12 2016

dkg reopened T2316: ssh-add ignores keys already in private-keys-v1.d but not in sshcontrol as "Open".
Oct 12 2016, 11:51 PM · gnupg, Not A Bug, Bug Report, ssh, gpgagent, gnupg (gpg21)
dkg added a comment to T2316: ssh-add ignores keys already in private-keys-v1.d but not in sshcontrol.

This is apparently just re-reported on gnupg-users:

https://lists.gnupg.org/pipermail/gnupg-users/2016-October/056892.html

So i don't think it's fixed.

And fwiw, it seems like a clear bug to me if i use "ssh-add" and then it is not
added to the agent.

From the ssh-add's client's perspective, some keys are magically never added,
but others are. This kind of mystery behavior is confusing and frustrating. If
gpg-agent is going to handle the ssh-agent protocol, it should aim toward behave
as the user of the ssh-agent protocol expects, regardless of whether the user
knows that they're using gpg-agent or some other implementation.

Oct 12 2016, 11:51 PM · gnupg, Not A Bug, Bug Report, ssh, gpgagent, gnupg (gpg21)

Jul 25 2016

justus added a comment to T2355: --import of a keypair together with --batch results in no pinentry and i/o errors.

Ah, I misunderstood your problem. In the future, please paste all program interactions in one chunk
in the right order. We did merge some changes related to exporting of secret keys, so it may very
well be solved by that.

Thanks for caring :)

Jul 25 2016, 11:02 AM · Bug Report, gpgagent, gnupg (gpg21), Windows, gnupg, Windows 32, pinentry
justus closed T2355: --import of a keypair together with --batch results in no pinentry and i/o errors as Resolved.
Jul 25 2016, 11:02 AM · Bug Report, gpgagent, gnupg (gpg21), Windows, gnupg, Windows 32, pinentry

Jul 22 2016

dranft added a comment to T2355: --import of a keypair together with --batch results in no pinentry and i/o errors.

I think the problem is that your key export fails, because you pointed
--homedir at the (presumably) empty directory "%tmp%\_tempKeyring".

The export did not use any filter and tried to export a key as can be seen in
Msg8313 "error receiving key from agent"
The import itself also stated no errors as it can be seen in T2355 (dranft on May 12 2016, 03:00 PM / Roundup), but this
imported secret key cannot be used (or exported) anymore.
Also important: This is no longer reproducible in 2.1.14 (which might be enough
to set the bug to fixed)

Jul 22 2016, 3:11 PM · Bug Report, gpgagent, gnupg (gpg21), Windows, gnupg, Windows 32, pinentry
justus claimed T2355: --import of a keypair together with --batch results in no pinentry and i/o errors.
Jul 22 2016, 2:48 PM · Bug Report, gpgagent, gnupg (gpg21), Windows, gnupg, Windows 32, pinentry
justus added a comment to T2355: --import of a keypair together with --batch results in no pinentry and i/o errors.

I don't believe this demonstrates a bug.

I think the problem is that your key export fails, because you pointed --homedir at the (presumably)
empty directory "%tmp%\_tempKeyring". This leads to the not very helpful error message about the
eof. If the export were successful, gpg would have written the key to stdout.

For reference, here is what I tried. First GNUPGHOME points to a home with the key I want to export:

    $ echo $GNUPGHOME
    /tmp/tmp.T7I4M9RIc3
    $ g10/gpg --list-keys alpha
    gpg: please do a --check-trustdb
    pub   dsa1024 1999-03-08 [SCA]
          A0FF4590BB6122EDEF6E3C542D727CC768697734
    uid           [ unknown] Alfa Test (demo key) <alfa@example.net>
    uid           [ unknown] Alpha Test (demo key) <alpha@example.net>
    uid           [ unknown] Alice (demo key)
    sub   elg1024 1999-03-08 [E]

You need some kind of pinentry program, because you may be asked for the current passphrase or an
export passphrase:

    $ cat $GNUPGHOME/gpg-agent.conf
    pinentry-program /usr/bin/pinentry-x11

Now export the key:

    $ g10/gpg --export-secret-keys alpha >/tmp/alpha.gpg

Now I create an empty home, and import the key in batch mode:

    $ export GNUPGHOME=$(mktemp -d)
    $ g10/gpg --batch --import /tmp/alpha.gpg
    gpg: keybox '/tmp/tmp.bL2caQmZri/pubring.kbx' created
    gpg: /tmp/tmp.bL2caQmZri/trustdb.gpg: trustdb created
    gpg: key 2D727CC768697734: public key "Alfa Test (demo key) <alfa@example.net>" imported
    gpg: key 2D727CC768697734: secret key imported
    gpg: Total number processed: 3
    gpg:               imported: 1
    gpg:       secret keys read: 3
    gpg:   secret keys imported: 2

Could you please check if that works for you?

Jul 22 2016, 2:48 PM · Bug Report, gpgagent, gnupg (gpg21), Windows, gnupg, Windows 32, pinentry

Jul 19 2016

justus added a comment to T2316: ssh-add ignores keys already in private-keys-v1.d but not in sshcontrol.

I do consider it a bug, at least because we did not signal an error to ssh-add.
Fortunately, this was easy to fix.

Fixed in 270f7f7b.

Jul 19 2016, 4:54 PM · gnupg, Not A Bug, Bug Report, ssh, gpgagent, gnupg (gpg21)
justus closed T2316: ssh-add ignores keys already in private-keys-v1.d but not in sshcontrol as Resolved.
Jul 19 2016, 4:54 PM · gnupg, Not A Bug, Bug Report, ssh, gpgagent, gnupg (gpg21)
justus added a project to T2358: gnupg 2.1, gpg-agent crashing on 'assertion failed' (OS X, Homebrew): gpgrt.
Jul 19 2016, 12:01 PM · gpgrt, Duplicate, gpgagent, gnupg (gpg21), Bug Report
justus added a comment to T2358: gnupg 2.1, gpg-agent crashing on 'assertion failed' (OS X, Homebrew).

Yes, that is very likely the same bug. Feel free to reopen this report if yuo
can still reproduce it, in which case a backtrace would be very handy.

Fixed in 28fd0ab.

Jul 19 2016, 12:01 PM · gpgrt, Duplicate, gpgagent, gnupg (gpg21), Bug Report
justus removed a project from T2358: gnupg 2.1, gpg-agent crashing on 'assertion failed' (OS X, Homebrew): gnupg.
Jul 19 2016, 12:01 PM · gpgrt, Duplicate, gpgagent, gnupg (gpg21), Bug Report
justus closed T2358: gnupg 2.1, gpg-agent crashing on 'assertion failed' (OS X, Homebrew) as Resolved.
Jul 19 2016, 12:01 PM · gpgrt, Duplicate, gpgagent, gnupg (gpg21), Bug Report

Jul 18 2016

justus added a comment to T2015: GET_PASSPHRASE with --no-ask always return error in gnupg 2.1.5.

Fixed in f4742493.

Jul 18 2016, 12:59 PM · gpgagent, Bug Report, gnupg
justus closed T2015: GET_PASSPHRASE with --no-ask always return error in gnupg 2.1.5 as Resolved.
Jul 18 2016, 12:59 PM · gpgagent, Bug Report, gnupg

Jun 9 2016

gfontenot added a comment to T2358: gnupg 2.1, gpg-agent crashing on 'assertion failed' (OS X, Homebrew).

Sorry for going AWOL on this, Werner. Do you still need a backtrace from me, or is the
one from 2371 enough?

Jun 9 2016, 4:58 PM · gpgrt, Duplicate, gpgagent, gnupg (gpg21), Bug Report

May 30 2016

werner added a comment to T2358: gnupg 2.1, gpg-agent crashing on 'assertion failed' (OS X, Homebrew).

See bug 2371, which has a backtrace attached.

May 30 2016, 8:08 AM · gpgrt, Duplicate, gpgagent, gnupg (gpg21), Bug Report
werner added a project to T2358: gnupg 2.1, gpg-agent crashing on 'assertion failed' (OS X, Homebrew): Duplicate.
May 30 2016, 8:08 AM · gpgrt, Duplicate, gpgagent, gnupg (gpg21), Bug Report
werner added a comment to T2358: gnupg 2.1, gpg-agent crashing on 'assertion failed' (OS X, Homebrew).

Duplicate of T2371

May 30 2016, 8:08 AM · gpgrt, Duplicate, gpgagent, gnupg (gpg21), Bug Report

May 19 2016

werner added projects to T2358: gnupg 2.1, gpg-agent crashing on 'assertion failed' (OS X, Homebrew): gnupg (gpg21), gpgagent, gnupg.
May 19 2016, 10:07 AM · gpgrt, Duplicate, gpgagent, gnupg (gpg21), Bug Report
werner added a comment to T2358: gnupg 2.1, gpg-agent crashing on 'assertion failed' (OS X, Homebrew).

Thanks. I need a stack backtrace to find the location of the cause.
Please start gpg-agent using:

  gpg-connect-agent /bye

The figure out the PID of the gpg-agent process and run

  gdb /usr/local/bin/gpg-agent PID

At the gdb prompt enter

  handle SIGPIPE nostop noprint pass
  c

The "c" continues operation of gpg-agent. In another terminal run

  gpg2 --sign

as done in your example. GDB in the first terminal will eventually
stop due to the assert. Enter at the gdb prompt:

  bt

and post the output. I would also like to know which version of
libgpg-error you are using:

  gpg-error --version

should show this (or use gpg-error-config --version).

May 19 2016, 10:07 AM · gpgrt, Duplicate, gpgagent, gnupg (gpg21), Bug Report

May 12 2016

dranft renamed T2355: --import of a keypair together with --batch results in no pinentry and i/o errors from --import of a keypair together with --batch and --homedir results in no pinentry and i/o errors to --import of a keypair together with --batch results in no pinentry and i/o errors.
May 12 2016, 3:07 PM · Bug Report, gpgagent, gnupg (gpg21), Windows, gnupg, Windows 32, pinentry
dranft added a comment to T2355: --import of a keypair together with --batch results in no pinentry and i/o errors.

PS: forget the --homedir thing, it is even reprodicable in the default folder in
%appdata%.

May 12 2016, 3:07 PM · Bug Report, gpgagent, gnupg (gpg21), Windows, gnupg, Windows 32, pinentry
dranft added a comment to T2355: --import of a keypair together with --batch results in no pinentry and i/o errors.

Sorry, forgot my import cmdline:

C:\Program Files (x86)\GNU\GnuPG\2.1.12\bin>gpg --batch --homedir
%tmp%\_tempKeyring --import "P:\2EEC2B65A2B4B3EF.sec.asc"
gpg: Die "Keybox" `C:/Users/ranftd/AppData/Local/Temp/_tempKeyring/pubring.kbx'
wurde erstellt
gpg: C:/Users/ranftd/AppData/Local/Temp/_tempKeyring/trustdb.gpg: trust-db erzeugt
gpg: Schlüssel A2B4B3EF: Öffentlicher Schlüssel "Daniel Ranft (Giegerich &
Partner GmbH)" importiert
gpg: Schlüssel A2B4B3EF: "Daniel Ranft (Giegerich & Partner GmbH)" nicht geändert
gpg: Schlüssel A2B4B3EF: geheimer Schlüssel importiert
gpg: Anzahl insgesamt bearbeiteter Schlüssel: 4
gpg: importiert: 1
gpg: unverändert: 1
gpg: gelesene geheime Schlüssel: 3
gpg: unveränderte geh. Schl.: 2
gpg: keine ultimativ vertrauenswürdigen Schlüssel gefunden

May 12 2016, 3:00 PM · Bug Report, gpgagent, gnupg (gpg21), Windows, gnupg, Windows 32, pinentry
dranft set Version to 2.1.12 on T2355: --import of a keypair together with --batch results in no pinentry and i/o errors.
May 12 2016, 2:58 PM · Bug Report, gpgagent, gnupg (gpg21), Windows, gnupg, Windows 32, pinentry
dranft added projects to T2355: --import of a keypair together with --batch results in no pinentry and i/o errors: pinentry, Windows 32, gnupg, Windows, gnupg (gpg21), gpgagent, Bug Report.
May 12 2016, 2:58 PM · Bug Report, gpgagent, gnupg (gpg21), Windows, gnupg, Windows 32, pinentry

Apr 19 2016

werner closed T2310: Set 'confirm' flag with smartcard as Resolved.
Apr 19 2016, 2:22 PM · gnupg, gpgagent, Feature Request
gregoire renamed T2310: Set 'confirm' flag with smartcard from Set 'config' flag with smartcard to Set 'confirm' flag with smartcard.
Apr 19 2016, 11:39 AM · gnupg, gpgagent, Feature Request
gregoire added a comment to T2310: Set 'confirm' flag with smartcard.

I think I was confused by the fact that I didn't use ssh-add to add the key and
I didn't realize that I could add it manually to sshcontrol. I did that and it
now works as expected. Sorry about the noise.

Although maybe it would be nice to be able to make 'confirm' the default for
keys which are not listed in sshcontrol. But that's a very minor thing.

Apr 19 2016, 11:39 AM · gnupg, gpgagent, Feature Request

Apr 15 2016

werner added a project to T2316: ssh-add ignores keys already in private-keys-v1.d but not in sshcontrol: gnupg.
Apr 15 2016, 8:31 AM · gnupg, Not A Bug, Bug Report, ssh, gpgagent, gnupg (gpg21)

Apr 14 2016

werner added a project to T2316: ssh-add ignores keys already in private-keys-v1.d but not in sshcontrol: Not A Bug.
Apr 14 2016, 3:48 PM · gnupg, Not A Bug, Bug Report, ssh, gpgagent, gnupg (gpg21)
werner added a comment to T2316: ssh-add ignores keys already in private-keys-v1.d but not in sshcontrol.

I would not consider this a bug. sshcontrol is used to enable certain keys for
use with ssh. Updating keys is useless if they are already available.

If you remove the keys from sshcontrol you disable them. I would suggest to put
a '!' in front of the keygrip instead of deleting the line in sshcontrol. This
allows to re-enable a key w/o problems.

Apr 14 2016, 3:48 PM · gnupg, Not A Bug, Bug Report, ssh, gpgagent, gnupg (gpg21)

Apr 13 2016

DamienCassou added a comment to T2316: ssh-add ignores keys already in private-keys-v1.d but not in sshcontrol.

The solution is to remove the key in private-keys-v1.d before running ssh-add.

http://superuser.com/a/1064269/216912

Apr 13 2016, 10:49 AM · gnupg, Not A Bug, Bug Report, ssh, gpgagent, gnupg (gpg21)
DamienCassou set Version to 2.1.11 on T2316: ssh-add ignores keys already in private-keys-v1.d but not in sshcontrol.
Apr 13 2016, 10:48 AM · gnupg, Not A Bug, Bug Report, ssh, gpgagent, gnupg (gpg21)