Most GnuPG 2.1.1 tests fail on Solaris 10

Laurent Blume laurent at elanor.org
Thu Dec 18 11:29:32 CET 2014


Hello,

On Solaris 10, GnuPG 2.1.1 builds fine, but most tests fail:
======================================
28 of 30 tests failed
Please report to http://bugs.gnupg.org
======================================

I see two issues causing it, one is easy, the other seems odd.

The first:
/bin/sh on Solaris 10 is an old-fashioned Bourne shell, and it doesn't 
support $(). I attached a small patch to replace that by ``.

The second:
even after that, gpg-agent would fail to start.
What it boils down too, apparently, is that if the GNUPGHOME variable is 
too long (as is the case when using the build directory for the tests), 
it fails.

Here's a copy/paste example, using an empty directory:

// First try, short GNUPGHOME, it starts normally

$ mkdir /tmp/gnupg

$ export GNUPGHOME=/tmp/gnupg

$ ../../tools/gpg-connect-agent -v 
--agent-program="$(pwd)/../../agent/gpg-agent|--debug-quick-random" /bye
gpg-connect-agent: no running gpg-agent - starting 
'/export/espace/apps/OpenCSW/mgar/gnupg2/branches/gnupg-2.1/work/build-isa-pentium_pro/gnupg-2.1.1/tests/openpgp/../../agent/gpg-agent|--debug-quick-random'
gpg-connect-agent: waiting for the agent to come up ... (5s)
gpg-connect-agent: connection to agent established
gpg-connect-agent: closing connection to agent

$ pkill gpg-agent

// Second try, using an artificially long GNUPGHOME, it fails. Note that 
I used a multiple ../ only to emphasize it's the same directory, the 
issue is of course the same with a really long path.

$ rm -rf /tmp/gnupg

$ mkdir /tmp/gnupg

$ export 
GNUPGHOME=/tmp/gnupg/../gnupg/../gnupg/../gnupg/../gnupg/../gnupg/../gnupg/../gnupg/../gnupg/../gnupg/../gnupg/../gnupg/../gnupg/../gnupg

$ ../../tools/gpg-connect-agent -v 
--agent-program="$(pwd)/../../agent/gpg-agent|--debug-quick-random" /bye
gpg-connect-agent: no running gpg-agent - starting 
'/export/espace/apps/OpenCSW/mgar/gnupg2/branches/gnupg-2.1/work/build-isa-pentium_pro/gnupg-2.1.1/tests/openpgp/../../agent/gpg-agent|--debug-quick-random'
gpg-connect-agent: waiting for the agent to come up ... (5s)
gpg-connect-agent: waiting for the agent to come up ... (4s)
gpg-connect-agent: waiting for the agent to come up ... (3s)
gpg-connect-agent: waiting for the agent to come up ... (2s)
gpg-connect-agent: waiting for the agent to come up ... (1s)
gpg-connect-agent: can't connect to the agent: Invalid value passed to IPC
gpg-connect-agent: error sending standard options: No agent running


Thanks,

Laurent
-------------- next part --------------
diff --git a/tests/openpgp/defs.inc b/tests/openpgp/defs.inc
index 941f786..c7390cf 100755
--- a/tests/openpgp/defs.inc
+++ b/tests/openpgp/defs.inc
@@ -217,12 +217,12 @@ unset GPG_AGENT_INFO
 # (--no-permission-warning makes only sense on the commandline)
 GPG="../../g10/gpg2 --no-permission-warning "
 # (We may not use a relative name for gpg-agent.)
-GPG_AGENT="$(cd ../../agent && /bin/pwd)/gpg-agent"
+GPG_AGENT="`cd ../../agent && /bin/pwd`/gpg-agent"
 GPG_CONNECT_AGENT="../../tools/gpg-connect-agent"
 GPGCONF="../../tools/gpgconf"
 GPG_PRESET_PASSPHRASE="../../agent/gpg-preset-passphrase"
 MKTDATA="../../tools/mk-tdata"
-PINENTRY="$(cd $srcdir && /bin/pwd)/pinentry.sh"
+PINENTRY="`cd $srcdir && /bin/pwd`/pinentry.sh"
 # Default to empty passphrase for pinentry.sh
 PINENTRY_USER_DATA=
 


More information about the Gnupg-devel mailing list