See T2107 for more info.
Description
Details
- Version
- 2.1.13
Status | Assigned | Task | ||
---|---|---|---|---|
Resolved | • werner | T2348 Improve detection of IPv6 and IPv4 availibility | ||
Resolved | • werner | T4036 gnupg 2.2.9 release | ||
Resolved | • aheinecke | T4029 Gpg4win 3.1.3 |
Event Timeline
fwiw, when i'm on a network that doesn't support IPv6, i get this:
0 dkg@alice:~$ gpg --send $KEYID
gpg: sending key REDACTED to hkps://hkps.pool.sks-keyservers.net
gpg: keyserver send failed: Invalid argument
gpg: keyserver send failed: Invalid argument
2 dkg@alice:~$
in dirmngr's logs:
2016-06-17 19:30:17 dirmngr[27999.2] DBG: gnutls:L3: ASSERT: mpi.c:246
2016-06-17 19:30:17 dirmngr[27999.2] DBG: gnutls:L5: REC[0x7f61f400fc10]:
Allocating epoch #0
2016-06-17 19:30:17 dirmngr[27999.2] can't connect to '2001:ba8:1f1:f2d4::2':
Invalid argument
2016-06-17 19:30:17 dirmngr[27999.2] error connecting to
'https://[2001:ba8:1f1:f2d4::2]:443': Invalid argument
2016-06-17 19:30:17 dirmngr[27999.2] DBG: gnutls:L5: REC[0x7f61f400fc10]: Start
of epoch cleanup
2016-06-17 19:30:17 dirmngr[27999.2] DBG: gnutls:L5: REC[0x7f61f400fc10]: End of
epoch cleanup
I think this instance of dirmngr was started on a network that has both IPv4 and
IPv6.
if i do:
gpg-connect-agent --dirmngr killdirmngr /bye
and then try the --send again, it goes through fine.
I think that this is same issue of T2438: dirmngr fails repeatedly with "invalid argument", without kicking the host from its list.
Merging.
I tested with:
# sysctl net.ipv6.conf.all.disable_ipv6=1
Now (2.2.8), it (connect(2)) returns EADDRNOTAVAIL, which is correctly handled by handle_send_request_error.
As written in T2438:
One problem was fixed for handling IPv6 name resolution: rG892b33bb2c57: dirmngr: Fix alignment of ADDR.
I manually configure IPv6 only environment, and now (forthcoming 2.2.9), it works fine for me.
So, I move this state to Testing.