Minor fix for pesky v3k keys
[pgp-tools.git] / gpg-key2ps / gpg-key2ps
index 5b875856fd6d09b102f04db3a06790627001a374..05c2bf5d0b660c014c4e1cd2f603e17ea2571c08 100755 (executable)
@@ -2,7 +2,7 @@
 #
 # gpg-key2ps: convert a PGP/GnuPG key into paper slips.
 # Copyright (C) 2001-2005  Simon Richter
-# Copyright (C) 2005  Thijs Kinkhorst
+# Copyright (C) 2005-2006  Thijs Kinkhorst
 # Copyright (C) 2005  Christoph Berg <cb@df7cb.de>
 # Licenced under the GNU General Public License,
 # version 2 or later.
@@ -78,7 +78,7 @@ usage(\*STDERR, 1) unless scalar @ARGV >= 1;
 
 # determine the paper size through the paperconf tool
 my $w; my $h;
-if ( -x "/usr/bin/paperconf" ) {
+if ( `which paperconf` && $? == 0 ) {
        $w=`paperconf -w`;
        $h=`paperconf -h`;
        chomp($w);
@@ -165,8 +165,6 @@ if ( $revokestyle eq "grey" ) {
        print " uid\n";
        print " 0 setgray\n";
        print "} def\n";
-} elsif ( $revokestyle eq "hide" ) {
-       print "/revuid {} def\n";
 } elsif ( $revokestyle eq "note" ) {
        print "/revuid {\n";
        print " 50 y moveto (uid) show\n";
@@ -223,7 +221,9 @@ while(<GPG>) {
        # user ids
        s/^uid:[^:r]*:[^:]*:[^:]*:[^:]*:[^:]*:[^:]*:[^:]*:[^:]*:([^:]*):.*/     ($1) uid/;
        # revoked user id
-       s/^uid:r[^:]*:[^:]*:[^:]*:[^:]*:[^:]*:[^:]*:[^:]*:[^:]*:([^:]*):.*/     ($1) revuid/;
+       if (s/^uid:r[^:]*:[^:]*:[^:]*:[^:]*:[^:]*:[^:]*:[^:]*:[^:]*:([^:]*):.*/ ($1) revuid/) {
+               next if $revokestyle eq "hide";
+       }
        # subkey
        s/^sub:[^:]*:([^:]*):([0-9]*):.{8,8}(.{8,8}):([^:]*):[^:]*:[^:]*:[^:]*:[^:]*:[^:]*:[^:]*:.*/    ($4) ($3) $2 ($1) sbk/;
        $numlines++;