Page MenuHome GnuPG

gpgme testsuite error against gnupg 2.2.45
Closed, ResolvedPublic

Description

gpgme 1.23.2 (and GIT head) throws a testsuite error with gnupg 2.2.45.

make[7]: Entering directory '/tmp/GPGME/gpgme/build/tests/gpgsm'
starting gpg-agent..
gpg-connect-agent: no running gpg-agent - starting '/usr/bin/gpg-agent|--debug-quick-random'
gpg-connect-agent: waiting for the agent to come up ... (5s)
gpg-connect-agent: connection to agent established
OK
PASS: initial.test
PASS: t-import
User ID unexpectedly validity: 2
Checking key 3CF405464F66ED4A7DF45BBDD1E4282E33BDB76E
FAIL: t-keylist

cu Andreas

Details

External Link
https://bugs.debian.org/1086271
Version
1.23.2

Event Timeline

$ gpgsm --version
gpgsm (GnuPG) 2.2.45-beta27
libgcrypt 1.8.12-beta1
libksba 1.6.7

$ GNUPGHOME=$(pwd) gpgsm -k --with-colon 3CF405464F66ED4A7DF45BBDD1E4282E33BDB76E
gpgsm: NOTE: THIS IS A DEVELOPMENT VERSION!
gpgsm: It is only intended for test purposes and should NOT be
gpgsm: used in a production environment or with production keys!
gpgsm: WARNING: running with faked system time: 2001-12-13 11:00:00
gpgsm: filling istrusted cache failed: No data callback in IPC
[...]/build/gpgme/tests/gpgsm/pubring.kbx
----------------------------------------------------------
crt::1024:1:D1E4282E33BDB76E:20011203T093638:20021203T093638:00::CN=test cert 1,OU=Aegypten Project,O=g10 Code GmbH,L=Düsseldorf,C=DE::escESC:::::::
fpr:::::::::3CF405464F66ED4A7DF45BBDD1E4282E33BDB76E:::3CF405464F66ED4A7DF45BBDD1E4282E33BDB76E:
fp2:::::::::98DC1C3E6382D14E987F615FF9349B30FD2A6B8DA783BE6A18933BBE4357781F::::
grp:::::::::32100C27173EF6E9C4E9A25D3D69F86D37A4F939:
uid:::::::::CN=test cert 1,OU=Aegypten Project,O=g10 Code GmbH,L=Düsseldorf,C=DE::

The line
gpgsm: filling istrusted cache failed: No data callback in IPC
looks suspicious.

For comparison GnuPG 2.4.6-betasomething

$ gpgsm --version
gpgsm (GnuPG) 2.4.6-beta102
libgcrypt 1.11.1-beta31
libksba 1.7.0

$ GNUPGHOME=$(pwd) gpgsm -k --with-colon 3CF405464F66ED4A7DF45BBDD1E4282E33BDB76E
gpgsm: NOTE: THIS IS A DEVELOPMENT VERSION!
gpgsm: It is only intended for test purposes and should NOT be
gpgsm: used in a production environment or with production keys!
gpgsm: WARNING: running with faked system time: 2001-12-13 11:00:00
[...]/build/gpgme/tests/gpgsm/pubring.kbx
----------------------------------------------------------
crt:u:1024:1:D1E4282E33BDB76E:20011203T093638:20021203T093638:00::CN=test cert 1,OU=Aegypten Project,O=g10 Code GmbH,L=Düsseldorf,C=DE::escESC:::::::
fpr:::::::::3CF405464F66ED4A7DF45BBDD1E4282E33BDB76E:::3CF405464F66ED4A7DF45BBDD1E4282E33BDB76E:
fp2:::::::::98DC1C3E6382D14E987F615FF9349B30FD2A6B8DA783BE6A18933BBE4357781F::::
grp:::::::::32100C27173EF6E9C4E9A25D3D69F86D37A4F939:
uid:u::::::::CN=test cert 1,OU=Aegypten Project,O=g10 Code GmbH,L=Düsseldorf,C=DE:::
gniibe added a subscriber: gniibe.

@ikloecker : Thanks for investigating. Please note that gpg-agent is incompatible wrt LISTTRUSTED (2.2 vs 2.4). So, No data callback in IPC maybe expected with gpg-agent 2.4.

I located the bug and fixed in: rG2ca38bee7a63: agent: Fix status output for LISTTRUSTED.

werner added a subscriber: werner.

(Please don't set a milestone tag for a fix to an already released version - we use the milestones to track done tickets). Use instead the branch specific tag so it ends up on the workboard.

@ikloecker: What you see is a log_info emitted before falling back to the non-optimized code path.

Noet that the optimizations for X.509 we have in master and 2.2 won't be backported to 2.4.

My fault: All my test had the relax flag set which is so common to me that I did not thought about this. So you fix is for the case that no flag has been set for a fingerprint.

werner moved this task from Backlog to QA on the gnupg22 board.