Fixed in 1.2.1.
- Queries
- All Stories
- Search
- Advanced Search
- Transactions
- Transaction Logs
Advanced Search
Aug 25 2022
Thanks for the followup about R3, @mpilgrem! Looking at your logs in more details, and the source code for find_cert_bysubject in dirmngr/certcache.c, i think i see what the issue is. It's slightly more subtle than not terminating early if a known trusted root can validate a truncated chain.
Aug 24 2022
@mpilgrem, i'm glad that removing the DST Root CA X3 from your windows control panel worked for you, but it still doesn't seem to be a reasonable fix from a GnuPG user perspective
Thanks for the information.
As a follow-up: Is it possible to tell gpg-agent to
- not ask to insert a missing smartcard (and behave as if cancel had been clicked; after which the next private key is used)
- but to ask for the pin, if the smartcard happens to be inserted?
pinentry 1.2.1 has been released today
I added this option on 2005-07-19 and iirc this was planned for the FSFE's rig to produce their membership cards. I kept that option in 2.0 for backward compatibility but it does not make any sense because its gpg-agent's duty to ask for cards - gpg does not known about it.
We have a cancel button and an cancel-all button (Window close button). The former skips the current key the latter should cancel the entire decryption process.
Looks like this option has been merged 16 years ago from gpg 1.4.3. My guess is that it was never used in gpg 2.x.
For the original issue I'd prefer to silence the error/warning with -Wno-narrowing because I think it's a non-issue. Or does changing the enum declarations to enum : unsigned int make clang happy?
For gpgme (as for the other GnuPG libraries) we use the good old mailing list based process for contributing patches. See doc/HACKING for details. In particular, we'll need a signed DCO from you.
Doing the same thing on my second PC, I can be more precise:
Yes, this is with Clang. I am working on getting it to compile on Windows with clang-cl, using vcpkg, with success. I have several patches to fix the issues that clang detected, and so I wonder if I should create a Task to discuss them all?
I'll reopen this ticket here, since the underlying issue is not quite resolved yet as @dkg helpfully outlined above.
g++: error: unrecognized command-line option '-Wc++11-narrowing'; did you mean '-Wno-narrowing'?
How did you get this error? I don't even see a warning for this when building gpgme with g++ (SUSE Linux) 12.1.1 20220812.
Thank you dkg. I am new to 'certificates' generally - and a little knowledge is a dangerous thing - but this is what I did:
Aug 23 2022
@mpilgrem: in the meantime, for connecting to keys.openpgp.org, which *has* cleaned up its certificate chain, you might also want to try killing your dirmngr process, and/or cleaning up the data in .gnupg/dirmngr-cache.d/.
Basically, the website in question (e.g. https://openpgpkey.gnupg.org/, which exhibits this problem) serves up three certificates:
In T6136#161943, @ikloecker wrote:This looks like a good approach, but I think stripping the standard paths needs to be deferred until later, because, if PKG_CONFIG_SYSROOT_DIR is set, then the library search paths are prefixed with $PKG_CONFIG_SYSROOT_DIR, and then the prefixed standard paths probably shouldn't be stripped.
Original pkg-config supports PKG_CONFIG_SYSTEM_LIBRARY_PATH (default is determined by build time, and overridden by environment var), PKG_CONFIG_SYSTEM_INCLUDE_PATH as well.
In T6136#161915, @orbea wrote:Or maybe it would be better to only check the standard libdir paths as in the libgpg-error configure.ac?
--- gpgrt-config.orig 2022-08-21 23:14:40.017298485 -0700 +++ gpgrt-config 2022-08-22 08:28:16.339977281 -0700 @@ -210,6 +210,7 @@ # the resulted list is in reverse order for __arg; do case "$__arg" in + -L/usr/lib|-L/usr/lib64|-L/lib|-L/lib64) ;; -l*) # As-is __rev_list="$__arg${__rev_list:+ }$__rev_list"
Aug 22 2022
In that case, it's a bug in gnupg and there's nothing I can further do from my side 🤷
Thank you Valodim. I am new to GnuPG etc, so not sure if I should be doing something at my end. At the moment, whatever you have changed does not seem to have affected my experience. This is my current log for the same failed commands as above:
2022-08-22 21:31:19 dirmngr[1152] listening on socket 'C:\\Users\\mike\\AppData\\Local\\gnupg\\S.dirmngr' 2022-08-22 21:31:19 dirmngr[1152] DBG: number of certs loaded from store 'ROOT': 70 2022-08-22 21:31:19 dirmngr[1152] DBG: certificate 'CA' already cached 2022-08-22 21:31:19 dirmngr[1152] DBG: number of certs loaded from store 'CA': 151 2022-08-22 21:31:19 dirmngr[1152] permanently loaded certificates: 221 2022-08-22 21:31:19 dirmngr[1152] runtime cached certificates: 0 2022-08-22 21:31:19 dirmngr[1152] trusted certificates: 221 (221,0,0,0) 2022-08-22 21:31:19 dirmngr[1152] handler for fd 704 started 2022-08-22 21:31:19 dirmngr[1152] DBG: chan_0x000002c0 -> # Home: C:\Users\mike\AppData\Roaming\gnupg 2022-08-22 21:31:19 dirmngr[1152] DBG: chan_0x000002c0 -> # Config: C:/Users/mike/AppData/Roaming/gnupg/dirmngr.conf 2022-08-22 21:31:19 dirmngr[1152] DBG: chan_0x000002c0 -> OK Dirmngr 2.3.7 at your service 2022-08-22 21:31:19 dirmngr[1152] DBG: chan_0x000002c0 <- GETINFO version 2022-08-22 21:31:19 dirmngr[1152] DBG: chan_0x000002c0 -> D 2.3.7 2022-08-22 21:31:19 dirmngr[1152] DBG: chan_0x000002c0 -> OK 2022-08-22 21:31:19 dirmngr[1152] DBG: chan_0x000002c0 <- KEYSERVER --clear hkps://keys.openpgp.org 2022-08-22 21:31:19 dirmngr[1152] DBG: chan_0x000002c0 -> OK 2022-08-22 21:31:19 dirmngr[1152] DBG: chan_0x000002c0 <- KS_SEARCH -- 575159689BEFB442 2022-08-22 21:31:19 dirmngr[1152] DBG: dns: dnsserver[0] '192.168.1.254' 2022-08-22 21:31:19 dirmngr[1152] DBG: dns: libdns initialized 2022-08-22 21:31:20 dirmngr[1152] DBG: dns: getsrv(_pgpkey-https._tcp.keys.openpgp.org) -> 0 records 2022-08-22 21:31:20 dirmngr[1152] DBG: dns: resolve_dns_name(keys.openpgp.org): Success 2022-08-22 21:31:20 dirmngr[1152] resolve_dns_addr for 'keys.openpgp.org': 'keys.openpgp.org' [already known] 2022-08-22 21:31:20 dirmngr[1152] resolve_dns_addr for 'keys.openpgp.org': 'keys.openpgp.org' [already known] 2022-08-22 21:31:20 dirmngr[1152] DBG: Using TLS library: NTBTLS 0.3.1 2022-08-22 21:31:20 dirmngr[1152] DBG: check_inet_support: family: 23 2022-08-22 21:31:20 dirmngr[1152] DBG: check_inet_support: addr: fe80::dc27:6f:dcb5:531e%4 2022-08-22 21:31:20 dirmngr[1152] DBG: check_inet_support: family: 23 2022-08-22 21:31:20 dirmngr[1152] DBG: check_inet_support: addr: 2a00:23c7:c181:f01:246b:c705:4a54:3265 2022-08-22 21:31:20 dirmngr[1152] DBG: check_inet_support: family: 23 2022-08-22 21:31:20 dirmngr[1152] DBG: check_inet_support: addr: 2a00:23c7:c181:f01:dc27:6f:dcb5:531e 2022-08-22 21:31:20 dirmngr[1152] DBG: check_inet_support: family: 23 2022-08-22 21:31:20 dirmngr[1152] DBG: check_inet_support: addr: fe80::9055:5c7f:95b9:e13d%47 2022-08-22 21:31:20 dirmngr[1152] DBG: check_inet_support: family: 2 2022-08-22 21:31:20 dirmngr[1152] DBG: check_inet_support: addr: 192.168.1.101 2022-08-22 21:31:20 dirmngr[1152] DBG: check_inet_support: family: 2 2022-08-22 21:31:20 dirmngr[1152] DBG: check_inet_support: addr: 172.22.176.1 2022-08-22 21:31:20 dirmngr[1152] DBG: http.c:connect_server: trying name='keys.openpgp.org' port=443 2022-08-22 21:31:20 dirmngr[1152] DBG: dns: resolve_dns_name(keys.openpgp.org): Success 2022-08-22 21:31:21 dirmngr[1152] DBG: http.c:1951:socket_new: object 0x036a2810 for fd 1020 created 2022-08-22 21:31:21 dirmngr[1152] certificate already cached 2022-08-22 21:31:21 dirmngr[1152] DBG: BEGIN Certificate 'subject': 2022-08-22 21:31:21 dirmngr[1152] DBG: serial: 0431B075AFEFF12EBDD26C62BECFF6F47A91 2022-08-22 21:31:21 dirmngr[1152] DBG: notBefore: 2022-08-22 14:26:24 2022-08-22 21:31:21 dirmngr[1152] DBG: notAfter: 2022-11-20 14:26:23 2022-08-22 21:31:21 dirmngr[1152] DBG: issuer: CN=R3,O=Let's Encrypt,C=US 2022-08-22 21:31:21 dirmngr[1152] DBG: subject: CN=keys.openpgp.org 2022-08-22 21:31:21 dirmngr[1152] DBG: aka: (8:dns-name16:keys.openpgp.org) 2022-08-22 21:31:21 dirmngr[1152] DBG: hash algo: 1.2.840.113549.1.1.11 2022-08-22 21:31:21 dirmngr[1152] DBG: SHA1 fingerprint: 8647D98EE3F7ADF2BB151AEAAF462BA2BDAFCDA4 2022-08-22 21:31:21 dirmngr[1152] DBG: END Certificate 2022-08-22 21:31:21 dirmngr[1152] Note: non-critical certificate policy not allowed 2022-08-22 21:31:21 dirmngr[1152] DBG: find_cert_bysubject: certificate found in the cache by subject DN 2022-08-22 21:31:21 dirmngr[1152] DBG: got issuer's certificate: 2022-08-22 21:31:21 dirmngr[1152] DBG: BEGIN Certificate 'issuer': 2022-08-22 21:31:21 dirmngr[1152] DBG: serial: 400175048314A4C8218C84A90C16CDDF 2022-08-22 21:31:21 dirmngr[1152] DBG: notBefore: 2020-10-07 19:21:40 2022-08-22 21:31:21 dirmngr[1152] DBG: notAfter: 2021-09-29 19:21:40 2022-08-22 21:31:21 dirmngr[1152] DBG: issuer: CN=DST Root CA X3,O=Digital Signature Trust Co. 2022-08-22 21:31:21 dirmngr[1152] DBG: subject: CN=R3,O=Let's Encrypt,C=US 2022-08-22 21:31:21 dirmngr[1152] DBG: hash algo: 1.2.840.113549.1.1.11 2022-08-22 21:31:21 dirmngr[1152] DBG: SHA1 fingerprint: 48504E974C0DAC5B5CD476C8202274B24C8C7172 2022-08-22 21:31:21 dirmngr[1152] DBG: END Certificate 2022-08-22 21:31:21 dirmngr[1152] DBG: sigval: (sig-val 2022-08-22 21:31:21 dirmngr[1152] DBG: (rsa 2022-08-22 21:31:21 dirmngr[1152] DBG: (s #33074E9B2D6823CFFEBF5744AAD2A132B42ED88ACFEE01AF908D51F04D582E5EE29126D705F0BA2734504EF143B8FFFEE9BBA6DBDDAE010450A3B0AA42CAEED9ADBC3AC22B45E4FEEC6E49AAABF4C557BE8D9833F4815AC8080F3ADADAE654BBBA5328DBB7FFC1EB5EAE166076884BF57B4F052B155843EF17236529CE9D702D6E4FE8DFDC69BD713758140457EE85C8E8D07F48EFC8F3E256518527D02F177356AF10DB5B23BEC31D10208733FFA48667C887E42F7EE03466CFEFD0E068403C5A539CA041CB062571AE38827DDEE24E6EBC376D3C59DCF3E594B516398AE9C35CFE816FA4CFAE2A240FDAF21BF298B68501A967A6AE967017534FC40406E33B#) 2022-08-22 21:31:21 dirmngr[1152] DBG: ) 2022-08-22 21:31:21 dirmngr[1152] DBG: (hash sha256)) 2022-08-22 21:31:21 dirmngr[1152] DBG: PKCS#1 block type 1 encoded data:+01ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff \ 2022-08-22 21:31:21 dirmngr[1152] DBG: ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff \ 2022-08-22 21:31:21 dirmngr[1152] DBG: ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff \ 2022-08-22 21:31:21 dirmngr[1152] DBG: ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff \ 2022-08-22 21:31:21 dirmngr[1152] DBG: ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff \ 2022-08-22 21:31:21 dirmngr[1152] DBG: ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff \ 2022-08-22 21:31:21 dirmngr[1152] DBG: ffffffffffffffffffffff003031300d0609608648016503040201050004207d \ 2022-08-22 21:31:21 dirmngr[1152] DBG: 20adb93aafb8ffddebf14f6bf2430074c4967b9f55a80f31a62556bf74ac98 2022-08-22 21:31:21 dirmngr[1152] DBG: rsa_verify data:+01ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff \ 2022-08-22 21:31:21 dirmngr[1152] DBG: ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff \ 2022-08-22 21:31:21 dirmngr[1152] DBG: ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff \ 2022-08-22 21:31:21 dirmngr[1152] DBG: ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff \ 2022-08-22 21:31:21 dirmngr[1152] DBG: ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff \ 2022-08-22 21:31:21 dirmngr[1152] DBG: ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff \ 2022-08-22 21:31:21 dirmngr[1152] DBG: ffffffffffffffffffffff003031300d0609608648016503040201050004207d \ 2022-08-22 21:31:21 dirmngr[1152] DBG: 20adb93aafb8ffddebf14f6bf2430074c4967b9f55a80f31a62556bf74ac98 2022-08-22 21:31:21 dirmngr[1152] DBG: rsa_verify sig:+33074e9b2d6823cffebf5744aad2a132b42ed88acfee01af908d51f04d582e5e \ 2022-08-22 21:31:21 dirmngr[1152] DBG: e29126d705f0ba2734504ef143b8fffee9bba6dbddae010450a3b0aa42caeed9 \ 2022-08-22 21:31:21 dirmngr[1152] DBG: adbc3ac22b45e4feec6e49aaabf4c557be8d9833f4815ac8080f3adadae654bb \ 2022-08-22 21:31:21 dirmngr[1152] DBG: ba5328dbb7ffc1eb5eae166076884bf57b4f052b155843ef17236529ce9d702d \ 2022-08-22 21:31:21 dirmngr[1152] DBG: 6e4fe8dfdc69bd713758140457ee85c8e8d07f48efc8f3e256518527d02f1773 \ 2022-08-22 21:31:21 dirmngr[1152] DBG: 56af10db5b23bec31d10208733ffa48667c887e42f7ee03466cfefd0e068403c \ 2022-08-22 21:31:21 dirmngr[1152] DBG: 5a539ca041cb062571ae38827ddee24e6ebc376d3c59dcf3e594b516398ae9c3 \ 2022-08-22 21:31:21 dirmngr[1152] DBG: 5cfe816fa4cfae2a240fdaf21bf298b68501a967a6ae967017534fc40406e33b 2022-08-22 21:31:21 dirmngr[1152] DBG: rsa_verify n:+bb021528ccf6a094d30f12ec8d5592c3f882f199a67a4288a75d26aab52bb9c5 \ 2022-08-22 21:31:21 dirmngr[1152] DBG: 4cb1af8e6bf975c8a3d70f4794145535578c9ea8a23919f5823c42a94e6ef53b \ 2022-08-22 21:31:21 dirmngr[1152] DBG: c32edb8dc0b05cf35938e7edcf69f05a0b1bbec094242587fa3771b313e71cac \ 2022-08-22 21:31:21 dirmngr[1152] DBG: e19befdbe43b45524596a9c153ce34c852eeb5aeed8fde6070e2a554abb66d0e \ 2022-08-22 21:31:21 dirmngr[1152] DBG: 97a540346b2bd3bc66eb66347cfa6b8b8f572999f830175dba726ffb81c5add2 \ 2022-08-22 21:31:21 dirmngr[1152] DBG: 86583d17c7e709bbf12bf786dcc1da715dd446e3ccad25c188bc60677566b3f1 \ 2022-08-22 21:31:21 dirmngr[1152] DBG: 18f7a25ce653ff3a88b647a5ff1318ea9809773f9d53f9cf01e5f5a6701714af \ 2022-08-22 21:31:21 dirmngr[1152] DBG: 63a4ff99b3939ddc53a706fe48851da169ae2575bb13cc5203f5ed51a18bdb15 2022-08-22 21:31:21 dirmngr[1152] DBG: rsa_verify e:+010001 2022-08-22 21:31:21 dirmngr[1152] DBG: rsa_verify cmp:+01ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff \ 2022-08-22 21:31:21 dirmngr[1152] DBG: ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff \ 2022-08-22 21:31:21 dirmngr[1152] DBG: ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff \ 2022-08-22 21:31:21 dirmngr[1152] DBG: ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff \ 2022-08-22 21:31:21 dirmngr[1152] DBG: ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff \ 2022-08-22 21:31:21 dirmngr[1152] DBG: ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff \ 2022-08-22 21:31:21 dirmngr[1152] DBG: ffffffffffffffffffffff003031300d0609608648016503040201050004207d \ 2022-08-22 21:31:21 dirmngr[1152] DBG: 20adb93aafb8ffddebf14f6bf2430074c4967b9f55a80f31a62556bf74ac98 2022-08-22 21:31:21 dirmngr[1152] DBG: rsa_verify => Good 2022-08-22 21:31:21 dirmngr[1152] DBG: gcry_pk_verify: Success 2022-08-22 21:31:21 dirmngr[1152] certificate is good 2022-08-22 21:31:21 dirmngr[1152] certificate has expired 2022-08-22 21:31:21 dirmngr[1152] (expired at 2021-09-29 19:21:40) 2022-08-22 21:31:21 dirmngr[1152] Note: non-critical certificate policy not allowed 2022-08-22 21:31:21 dirmngr[1152] DBG: find_cert_bysubject: certificate found in the cache by subject DN 2022-08-22 21:31:21 dirmngr[1152] DBG: got issuer's certificate: 2022-08-22 21:31:21 dirmngr[1152] DBG: BEGIN Certificate 'issuer': 2022-08-22 21:31:21 dirmngr[1152] DBG: serial: 44AFB080D6A327BA893039862EF8406B 2022-08-22 21:31:21 dirmngr[1152] DBG: notBefore: 2000-09-30 21:12:19 2022-08-22 21:31:21 dirmngr[1152] DBG: notAfter: 2021-09-30 14:01:15 2022-08-22 21:31:21 dirmngr[1152] DBG: issuer: CN=DST Root CA X3,O=Digital Signature Trust Co. 2022-08-22 21:31:21 dirmngr[1152] DBG: subject: CN=DST Root CA X3,O=Digital Signature Trust Co. 2022-08-22 21:31:21 dirmngr[1152] DBG: hash algo: 1.2.840.113549.1.1.5 2022-08-22 21:31:21 dirmngr[1152] DBG: SHA1 fingerprint: DAC9024F54D8F6DF94935FB1732638CA6AD77C13 2022-08-22 21:31:21 dirmngr[1152] DBG: END Certificate 2022-08-22 21:31:21 dirmngr[1152] DBG: sigval: (sig-val 2022-08-22 21:31:21 dirmngr[1152] DBG: (rsa 2022-08-22 21:31:21 dirmngr[1152] DBG: (s #D94CE0C9F584883731DBBB13E2B3FC8B6B62126C58B7497E3C02B7A81F2861EBCEE02E73EF49077A35841F1DAD68F0D8FE56812F6D7F58A66E3536101C73C3E5BD6D5E01D76E72FB2AA0B8D35764E55BC269D4D0B2F77C4BC3178E887273DCFDFC6DBDE3C90B8E613A16587D74362B55803DC763BE8443C639A10E6B579E3F29C180F6B2BD47CBAA306CB732E159540B1809175E636CFB96673C1C730C938BC611762486DE400707E47D2D66B525A39658C8EA80EECF693B96FCE68DC033F389F8292D14142D7EF06170955DF70BE5C0FB24FAEC8ECB61C8EE637128A82C053B77EF9B5E0364F051D1E485535CB00297D47EC634D2CE1000E4B1DF3AC2EA17BE#) 2022-08-22 21:31:21 dirmngr[1152] DBG: ) 2022-08-22 21:31:21 dirmngr[1152] DBG: (hash sha256)) 2022-08-22 21:31:21 dirmngr[1152] DBG: PKCS#1 block type 1 encoded data:+01ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff \ 2022-08-22 21:31:21 dirmngr[1152] DBG: ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff \ 2022-08-22 21:31:21 dirmngr[1152] DBG: ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff \ 2022-08-22 21:31:21 dirmngr[1152] DBG: ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff \ 2022-08-22 21:31:21 dirmngr[1152] DBG: ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff \ 2022-08-22 21:31:21 dirmngr[1152] DBG: ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff \ 2022-08-22 21:31:21 dirmngr[1152] DBG: ffffffffffffffffffffff003031300d06096086480165030402010500042032 \ 2022-08-22 21:31:21 dirmngr[1152] DBG: 86ff65a65faf32085eea1388c3738ba7e37873c906cce3c4a28b4cc2a58988 2022-08-22 21:31:21 dirmngr[1152] DBG: rsa_verify data:+01ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff \ 2022-08-22 21:31:21 dirmngr[1152] DBG: ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff \ 2022-08-22 21:31:21 dirmngr[1152] DBG: ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff \ 2022-08-22 21:31:21 dirmngr[1152] DBG: ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff \ 2022-08-22 21:31:21 dirmngr[1152] DBG: ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff \ 2022-08-22 21:31:21 dirmngr[1152] DBG: ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff \ 2022-08-22 21:31:21 dirmngr[1152] DBG: ffffffffffffffffffffff003031300d06096086480165030402010500042032 \ 2022-08-22 21:31:21 dirmngr[1152] DBG: 86ff65a65faf32085eea1388c3738ba7e37873c906cce3c4a28b4cc2a58988 2022-08-22 21:31:21 dirmngr[1152] DBG: rsa_verify sig:+d94ce0c9f584883731dbbb13e2b3fc8b6b62126c58b7497e3c02b7a81f2861eb \ 2022-08-22 21:31:21 dirmngr[1152] DBG: cee02e73ef49077a35841f1dad68f0d8fe56812f6d7f58a66e3536101c73c3e5 \ 2022-08-22 21:31:21 dirmngr[1152] DBG: bd6d5e01d76e72fb2aa0b8d35764e55bc269d4d0b2f77c4bc3178e887273dcfd \ 2022-08-22 21:31:21 dirmngr[1152] DBG: fc6dbde3c90b8e613a16587d74362b55803dc763be8443c639a10e6b579e3f29 \ 2022-08-22 21:31:21 dirmngr[1152] DBG: c180f6b2bd47cbaa306cb732e159540b1809175e636cfb96673c1c730c938bc6 \ 2022-08-22 21:31:21 dirmngr[1152] DBG: 11762486de400707e47d2d66b525a39658c8ea80eecf693b96fce68dc033f389 \ 2022-08-22 21:31:21 dirmngr[1152] DBG: f8292d14142d7ef06170955df70be5c0fb24faec8ecb61c8ee637128a82c053b \ 2022-08-22 21:31:21 dirmngr[1152] DBG: 77ef9b5e0364f051d1e485535cb00297d47ec634d2ce1000e4b1df3ac2ea17be 2022-08-22 21:31:21 dirmngr[1152] DBG: rsa_verify n:+dfafe99750088357b4cc6265f69082ecc7d32c6b30ca5becd9c37dc740c11814 \ 2022-08-22 21:31:21 dirmngr[1152] DBG: 8be0e83376492ae33f214993ac4e0eaf3e48cb65eefcd3210f65d22ad9328f8c \ 2022-08-22 21:31:21 dirmngr[1152] DBG: e5f777b0127bb595c089a3a9baed732e7a0c063283a27e8a1430cd11a0e12a38 \ 2022-08-22 21:31:21 dirmngr[1152] DBG: b9790a31fd50bd8065dfb7516383c8e28861ea4b6181ec526bb9a2e24b1a289f \ 2022-08-22 21:31:21 dirmngr[1152] DBG: 48a39e0cda098e3e172e1edd20df5bc62a8aab2ebd70adc50b1a25907472c57b \ 2022-08-22 21:31:21 dirmngr[1152] DBG: 6aab34d63089ffe568137b540bc8d6aeec5a9c921e3d64b38cc6dfbfc94170ec \ 2022-08-22 21:31:21 dirmngr[1152] DBG: 1672d526ec38553943d0fcfd185c40f197ebd59a9b8d1dbada25b9c6d8dfc115 \ 2022-08-22 21:31:21 dirmngr[1152] DBG: 023aabda6ef13e2ef55c089c3cd68369e4109b192ab62957e3e53d9b9ff0025d 2022-08-22 21:31:21 dirmngr[1152] DBG: rsa_verify e:+010001 2022-08-22 21:31:21 dirmngr[1152] DBG: rsa_verify cmp:+01ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff \ 2022-08-22 21:31:21 dirmngr[1152] DBG: ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff \ 2022-08-22 21:31:21 dirmngr[1152] DBG: ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff \ 2022-08-22 21:31:21 dirmngr[1152] DBG: ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff \ 2022-08-22 21:31:21 dirmngr[1152] DBG: ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff \ 2022-08-22 21:31:21 dirmngr[1152] DBG: ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff \ 2022-08-22 21:31:21 dirmngr[1152] DBG: ffffffffffffffffffffff003031300d06096086480165030402010500042032 \ 2022-08-22 21:31:21 dirmngr[1152] DBG: 86ff65a65faf32085eea1388c3738ba7e37873c906cce3c4a28b4cc2a58988 2022-08-22 21:31:21 dirmngr[1152] DBG: rsa_verify => Good 2022-08-22 21:31:21 dirmngr[1152] DBG: gcry_pk_verify: Success 2022-08-22 21:31:21 dirmngr[1152] certificate is good 2022-08-22 21:31:21 dirmngr[1152] certificate has expired 2022-08-22 21:31:21 dirmngr[1152] (expired at 2021-09-30 14:01:15) 2022-08-22 21:31:21 dirmngr[1152] root certificate is good and trusted 2022-08-22 21:31:21 dirmngr[1152] target certificate is NOT valid 2022-08-22 21:31:21 dirmngr[1152] TLS handshake failed: Certificate expired <Dirmngr> 2022-08-22 21:31:21 dirmngr[1152] error connecting to 'https://keys.openpgp.org:443': Certificate expired 2022-08-22 21:31:21 dirmngr[1152] command 'KS_SEARCH' failed: Certificate expired 2022-08-22 21:31:21 dirmngr[1152] DBG: chan_0x000002c0 -> ERR 167772261 Certificate expired <Dirmngr> 2022-08-22 21:31:21 dirmngr[1152] DBG: chan_0x000002c0 <- BYE 2022-08-22 21:31:21 dirmngr[1152] DBG: chan_0x000002c0 -> OK closing connection 2022-08-22 21:31:21 dirmngr[1152] handler for fd 704 terminated
exact v.2.3.8 is expected, generally I don't import Key on yubico I generate them directly from yubico itself in order to have the private Key created directly on yubico and not exportable.
Hmm. Good point. Always adding -L${libdir} makes the .pc files easier to relocate.
Hi! I would like to add my experience about this issue.
The -L${libdir} is standard in nearly all applicable .pc files on my system. In the case of pkgconf the -L linker path is removed from the output if its the standard linker path. Of course however you think its best to fix this would be fine though.
Why should gpgrt-config change the information read from the *.pc files?
It seems we were still providing the expired DST certificate, which led to an additional yet invalid trust path, which gnupg didn't consider "valid" overall. Mainstream TLS implementations are more lenient here which masked the issue for a bit.
Or maybe it would be better to only check the standard libdir paths as in the libgpg-error configure.ac?
--- gpgrt-config.orig 2022-08-21 23:14:40.017298485 -0700 +++ gpgrt-config 2022-08-22 08:28:16.339977281 -0700 @@ -210,6 +210,7 @@ # the resulted list is in reverse order for __arg; do case "$__arg" in + -L/usr/lib|-L/usr/lib64|-L/lib|-L/lib64) ;; -l*) # As-is __rev_list="$__arg${__rev_list:+ }$__rev_list"
Thanks. QGpgME should now also compile with strict C++11. And C++14'isms shouldn't happen again unnoticed.
Also in:
I suggest simply removing any -L linker path from the output if it matches the $libdir in gpgrt-config.
Even without libassuan-config installed in libassuan-2.5.5.
$ gpgrt-config --libdir=/usr/lib64 libassuan --libs -L/usr/lib64 -lassuan
gpg-error is not affected at least.
gpgrt-config --libdir=/usr/lib64 gpg-error --libs -lgpg-error
In lang/qt/tests/Makefile:
LIBASSUAN_CONFIG = /usr/bin/gpgrt-config --libdir=/usr/lib64 libassuan LIBASSUAN_LIBS = -L/usr/lib64 -lassuan
gpg-error-config and its relatives (libassuan-config, included) were written before pkg-config. The support of cross build, multiarch, and multilib by those are quite limited (and sometimes wrong). Basically, those scripts are deprecated, but it has been kept for backward compatibility.
It seems the issue is also in libassuan-config.
$ libassuan-config --libs -L/usr/lib64 -lassuan -lgpg-error
The shell logic here does not seem quite right to me.
Aug 21 2022
what's new for a possible gnupg 2.3.8 or gpg4win 4.0.4 release?
what's new for a possible gnupg 2.3.8 or gpg4win 4.0.4 release?
Aug 19 2022
I imported the public key using Kleopatra.
The information should now be updated automatically. F5 still won't change anything if the data on the smart card didn't change, but pressing F5 to update information about locally stored keys shouldn't be necessary in the first place.
The Smartcards view is not updated because the data on the card hasn't changed. The update can be forced by removing and re-inserting the card.
With GnuPG master and Kleopatra master I'm making (slightly) different observations.
Thanks for the report! Should be fixed.
Thanks for reporting and testing my fixes.
Aug 18 2022
Our tests are fine as of rM2e7a61b898fc.
Yes, that patch is not a great solution. Ideally there would be an interactive choice in the gpg CLI between encrypting/signing subkey during the add-existing-subkey operation.
Yeah. F5 only refreshes the smart cards. It doesn't refresh Kleopatra's key cache.
It will be a lot of work to change this in gpg. Thus ISO dates were only introduced with gpgsm after the former glibc maintainer refused to switch to a 64 bit time_t - which would have been easy enough at that time (about the year 2001).
Yes, it's a problem in gpg. gpg asks for the expiration date of the subkey
[ 277s] EditInteractor: 4 -> nextState( GET_LINE, keygen.valid ) -> 5
gpgme replies with an ISO date
[ 277s] EditInteractor: action result "21000101T120000"
Then gpg asks again for the expiration date
[ 277s] EditInteractor: 5 -> nextState( GET_LINE, keygen.valid ) -> 4294967295
which gpgme doesn't expect, so that gpgme return a "general error".
For the record, the changeset in the attached merge request is final and waiting for reviews.
Thank you for your log.
Aug 17 2022
Thanks! It seems that we pass the correct expiration date to gpg:
EditInteractor: action result "21000101T120000"
So, it's maybe a problem in gpg now.
[ 274s] + pushd lang/qt/tests
Hmm. Please run the test with
GPGMEPP_INTERACTOR_DEBUG=stderr GPGME_DEBUG=8 TESTS="initial.test t-addexistingsubkey final.test" make -e check-TESTS
in lang/qt/tests under the build folder to get (a lot of) debug output.
WIP with those three patches:
This patch breaks adding existing ECDH encryption subkeys to a key because now gpg tries to treat the encryption subkey as signing subkey. This can be reproduced with test t-addexistingsubkey in gpgme.
I am attaching the files. The "gpgconf --list-config" gave the error "gpgconf: can't open global config file 'C:\\ProgramData\\GNU\\etc\\gnupg\\gpgconf.conf': No such file or directory", so I tried the "gpgconf --show-configs".
ACS readers simply don't work reliable under Linux.
There is a reason that we switched to ISO Date strings in large parts of GnuPG ;-)
Hello again,
@ikloecker Thank you. You're right. Please go ahead.
Aug 16 2022
Aug 15 2022
It seems that the case $libdir = '${exec_prefix}/lib64' is not handled correctly, i.e. I get
prefix=/usr exec_prefix=${prefix} includedir=${prefix}/include libdir=${exec_prefix}/lib64 [...] Libs: -L${libdir} -lgpg-error
in gpg-error.pc.
Note that gpgrt-config supports the PKG_CONFIG_PATH and PKG_CONFIG_LIBDIR environment variables.
It's in 1.18.0.
It's in 1.18.0.
Please note that with newer libgpg-error releases, you can safely not install or can safely remove installed gpg-error-config. For GnuPG and its friends (including gpgme), gpgrt-config with gpg-error.pc are used instead (when no gpg-error-config).
gpg-error-config (which is old shell script to offer functionality of pkg-config) gives -L/usr/lib64 when it is configured at the build time.
gpg-error-config hasn't got improved, but kept its behavior (for backward compatibility and lesser surprise), while we are moving to the support of gpg-error.pc (by pkg-config and/or gpgrt-config).