Thu, Jun 13
I have a larger change for the wait code in the works. This will go into 1.14.0 but not in 1.13.1
Fri, Jun 7
Thu, Jun 6
I had to patch strace to follow threads but not forks (P8) and then when built with support for -k I tracked it down: In the inbound handler we close the fd immediately on EOF. However the upper layers don't know about it and a select fails with EBADF. Of course we could ignore the EBADF, figure out the closed fd and restart. The problem is that another thread may have opened a new oobject and that will get the last closed fd assigned - bummer.
Just noticed that due to me failing to properly understand re-entrant locks the run-thread test is broken at least on windows in that it never waits for completion. So running out of filedescriptors is to expect. I'll fix the test.
My observation from running the verify threaded test on windows is that it does behave differently. The EBADF does not occur.
Wed, Jun 5
Something(tm) closes an arbitrary file descriptor behind our back. Not easy to track down because strace can not trace only threads - it always wants to trace all children as well - which is a bit too much and leads to other problems.
Tue, Jun 4
Mon, Jun 3
A newline is required by the PEM standard.
Wed, May 29
Thanks, the mentioned OpenSSL option should be helpful.
A high level test description is:
- Configure both gpgsm and dirmngr to use OCSP.
- Use a certificate with OCSP responder extension present, or configure a default OCSP responder in dirmngr.
- Configure your OCSP responder to identify itself with key ID (and not subject name)
- Attempt to sign or verify with gpgsm.
- You should get an error, with dirmngr logs showing that the responder certificate could not be found.
Thank you for a quick fix (despite this being a minor problem).
Tue, May 28
Do you have any test cases? Note that T3966 is due to missing support for SHA-256.
We only supported SHA-1 signed OCSP requests. Fix will go into 2.2.16.
May 27 2019
Thanks to your very good analysis, this was easy to fix.
May 24 2019
Interesting tinge: The main CRL of the dgn.de CA uses a nextUpdate in the year 2034 (15 years in the future) which would force dirmngr to cache the CRL until then. However, the CRL of the intermediate certificate has a nextUpdate only one month in the future. There is currently no entry in that second level CRL, so their idea might be that an updated second level CRL will also trigger a reload of the main CRL. I have not checked how we implement that in Dirmngr but I doubt that such a thing will work for us and that it is in any way standard compliant.
May 16 2019
That was obvious. rG6fc5df1e10129f3171d80cf731f310b9e8d97c26 fixes this.
When doing a "gpgsm --with-validation -k foo" (assuming you have a cert foo) gpgsm now goes into a loop and prints the certficates that match "foo" over and over again. I have not tested if it was caused by this change but I think it is likely.
I imported 39 certificate files at once with Kleopatra with about 700 certificates and it worked. Took a long time though so It would be nice if Kleopatra would show a progess indicator or some indication that the import is running. But this is a different issue.
May 15 2019
Will give you more detailed info about your certificate. For even more details use --dump-chain instead of --list-chain.
May 14 2019
The last lines that the process currently holding wrote in the log:
To reproduce this issue I started Kleopatra with an empty GNUPGHOME and imported 10 S/MIME certs at once (which spawns a gpgsm process each) with enabled logging.
Thanks for the hint on the existing OID I already looked into that and planned to use one from the GnuPG arc, But an existing OID is better. I still need to figure useful workflows but something like this will be useful for smartcards..