Package: gnupg
Version: 1.4.1-1
Severity: normal

Actually this is a two-part bug report.  The first part is an assertion
failure:

griffon:~$ gpg --recv-keys 808D0FD0
gpg: requesting key 808D0FD0 from hkp server subkeys.pgp.net
gpg: key 808D0FD0: public key "Don Armstrong <[EMAIL PROTECTED]>" imported
gpg: ../../g10/keyring.c:1388: keyring_rebuild_cache: Assertion 
`keyblock->pkt->pkttype == PKT_PUBLIC_KEY' failed.
Aborted

That key ID was taken from an old e-mail while I was going through my
backlog of messages.  After the failure above, I attempted to reopen the
message in mutt.  The bottom line says "Invoking PGP..." and sits there
for a very long time (it's been 6 minutes at the time I'm writing -- it
should only be a second or two at most on this machine).

The process looks like this:

USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
greg      7418  0.0  0.2   4476  1436 pts/9    SL+  22:14   0:00 gpg 
--status-fd=2 --no-verbose --quiet --batch --output - --verify 
/tmp/mutt-griffon-1000-692-428.asc /tmp/mutt-griffon-1000-692-428

Ctrl-G in mutt does not interrupt the PGP (gpg) process.  I have to kill
it manually to regain control over mutt.  When I do that, the message
opens and looks like this:

[-- PGP output follows (current time: Mon 20 Jun 2005 10:14:31 PM EDT) --]
gpg: Signature made Thu 09 Jun 2005 06:09:12 PM EDT using DSA key ID 808D0FD0
gpg: checking the trustdb
gpg: waiting for lock (held by 7397 - probably dead) ...
gpg: waiting for lock (held by 7397 - probably dead) ...
[etc.]
gpg: waiting for lock (held by 7397 - probably dead) ...

gpg: Terminated caught ... exiting
[-- End of PGP output --]

There is no process 7397.

My inbox is a Maildir in my home directory, and my home directory is an NFS
file system (OpenBSD 3.7 NFS server) with the following options:

pegasus:/home on /home type nfs (rw,nolock,addr=192.168.2.1)

Opening a different PGP-signed message (for which no key exists in my
keyring yet) works fine.  However, opening any message that has been
signed by a key that I *do* have in my keyring (even my own) triggers
this problem.

I looked through bugs.debian.org/gnupg and it appears that bug#310328
is probably related to my problem.  At least, we have the "held by NNNN -
probably dead" part in common.

Here's what my .gnupg directory looks like right now:

griffon:~$ ls -lart .gnupg
total 1060
-rw-------    1 greg greg   4875 2004-10-13 18:53 secring.gpg
-rw-rw-r--    1 greg greg    412 2004-10-13 18:54 options
drwxr-xr-x  150 greg greg  19456 2005-06-20 20:16 ../
-rw-------    1 greg greg    600 2005-06-20 20:16 random_seed
-rw-r--r--    2 greg greg     11 2005-06-20 22:12 secring.gpg.lock
-rw-r--r--    2 greg greg     11 2005-06-20 22:12 pubring.gpg.lock
-rw-r--r--    1 greg greg 509614 2005-06-20 22:12 pubring.gpg~
-rw-r--r--    2 greg greg     11 2005-06-20 22:12 .#lk0x81193f0.griffon.7397
-rw-r--r--    1 greg greg     11 2005-06-20 22:12 .#lk0x8116ee0.griffon.7397
-rw-r--r--    2 greg greg     11 2005-06-20 22:12 .#lk0x8115b70.griffon.7397
-rw-rw-r--    1 greg greg   1280 2005-06-20 22:12 trustdb.gpg
-rw-r--r--    1 greg greg 510525 2005-06-20 22:12 pubring.gpg
-rw-------    1 greg greg     11 2005-06-20 22:32 .#lk0x811bb18.griffon.7492
-rw-------    1 greg greg     11 2005-06-20 22:32 .#lk0x8115cf8.griffon.7492
drwx------    2 greg greg    512 2005-06-20 22:32 ./

griffon:~$ grep -v '^#' .gnupg/options 
keyring ~/.gnupg/pubring.gpg
secret-keyring ~/.gnupg/secring.gpg
default-key 486BE64C
keyring ~/.pgp/pubring.pgp
secret-keyring ~/.pgp/secring.pgp
keyserver subkeys.pgp.net
keyserver-options no-auto-key-retrieve
no-secmem-warning

Next, I made sure there were no gpg processes running, and then I removed
all the .#lk* files.  However, this did *not* fix the problem.  Attempting
to open a signed message with a known key did exactly the same thing (hung
gpg process).  Here's the new process:

greg      7552  0.0  0.2   4476  1396 pts/9    SL+  22:54   0:00 gpg 
--status-fd=2 --no-verbose --quiet --batch --output - --verify 
/tmp/mutt-griffon-1000-692-443.asc /tmp/mutt-griffon-1000-692-443

And the new lock files:

-rw-------    1 greg greg     11 2005-06-20 22:54 .#lk0x811bb18.griffon.7552
-rw-------    1 greg greg     11 2005-06-20 22:54 .#lk0x8115cf8.griffon.7552

When I killed process 7552, I got this in mutt:

gpg: waiting for lock (held by 7397 - probably dead) ...

So I did the same thing *again* -- killed all the gpg processes, verified
that there were no .#lk* files, and also removed the *.lock files from
.gnupg.  It *still* hangs with the same message (held by 7397).  I don't
even know where it's getting 7397 from now, but it's pretty much stuck.

Just for the record, I can't do a --list-keys now either.

griffon:~$ gpg --list-keys wooledge
gpg: checking the trustdb
gpg: waiting for lock (held by 7397 - probably dead) ...
gpg: waiting for lock (held by 7397 - probably dead) ...

(I get a new line every few seconds until I hit ctrl-C.)

So, just for completeness, let's see what happens if I move trustdb.gpg
aside:

griffon:~/.gnupg$ mv trustdb.gpg backup.trustdb.gpg
griffon:~/.gnupg$ gpg --list-keys wooledge
gpg: /home/greg/.gnupg/trustdb.gpg: trustdb created
pub   1024D/2C686824 1999-05-14
uid                  Gregory J. Wooledge <[EMAIL PROTECTED]>
[...lots of output...]

griffon:~/.gnupg$ ls -lart
total 1054
-rw-------    1 greg greg   4875 2004-10-13 18:53 secring.gpg
-rw-rw-r--    1 greg greg    412 2004-10-13 18:54 options
drwxr-xr-x  150 greg greg  19456 2005-06-20 20:16 ../
-rw-------    1 greg greg    600 2005-06-20 20:16 random_seed
-rw-r--r--    1 greg greg 509614 2005-06-20 22:12 pubring.gpg~
-rw-r--r--    1 greg greg 510525 2005-06-20 22:12 pubring.gpg
-rw-rw-r--    1 greg greg   1280 2005-06-20 22:12 backup.trustdb.gpg
-rw-------    1 greg greg     40 2005-06-20 23:01 trustdb.gpg
drwx------    2 greg greg    512 2005-06-20 23:01 ./

It looks like a corrupted trust database.

-- System Information:
Debian Release: 3.1
  APT prefers unstable
  APT policy: (500, 'unstable')
Architecture: i386 (i686)
Kernel: Linux 2.4.28
Locale: LANG=en_US.ISO8859-1, LC_CTYPE=en_US.ISO8859-1 (charmap=ISO-8859-1)

Versions of packages gnupg depends on:
ii  libbz2-1.0                  1.0.2-1      A high-quality block-sorting file 
ii  libc6                       2.3.2.ds1-22 GNU C Library: Shared libraries an
ii  libldap2                    2.1.30-3     OpenLDAP libraries
ii  libreadline5                5.0-7        GNU readline and history libraries
ii  libusb-0.1-4                2:0.1.10a-6  userspace USB programming library
ii  makedev                     2.3.1-75     Creates device files in /dev
ii  zlib1g                      1:1.2.2-4    compression library - runtime

-- no debconf information


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]

Reply via email to