dirmngr (GnuPG) 2.1.0beta1 and older versions like 1.1.0 stop being responsive
when waiting for a connect some http CRLs. This makes dirmngr unusable as a
system service as other request could be served just fine, but are not.
How I could reproduce it. I am using dirmngr 2.1.0beta and start it locally:
Pasting the resulting DIRMNGR_INFO value into two shells.
dirmngr-client --ping now works. Asking for verify the attached certificate.
dirmngr-client DTAG_Issuing_CA_i01.der
Results in
dirmngr[20405.0]: handler for fd 0 started
dirmngr[20405.0]: connection from process 20406 (1001:1001)
dirmngr[20405.0]: no CRL available for issuer id
DE122F58CE35FEBBEEBB3D0D87D690605C20D8EE
dirmngr[20405.0]: checking distribution points
dirmngr[20405.0]: fetching CRL from
`http://corporate-pki1.telekom.de/cdp/Deutsche%20Telekom%20Root%20CA%202.crl'
On the other shell
dirmngr-client --ping
now waits.
strace -p 20405
Process 20405 attached - interrupt to quit
connect(1, {sa_family=AF_INET, sin_port=htons(80),
sin_addr=inet_addr("195.243.179.225")}, 16
also waits.
I guess there will be a certain firewall behaviour trying to access this http
address, I got this send with an email and it happened that my client
trying to just verify the email just froze. Later it even froze for other
operations, probably still having that request somewhere.
My expecation is that just the text is shown in the client, even when
verification waits for something.