projects
/
pgp-tools.git
/ blobdiff
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
gpgsigs: Implement support for latex output and photo ids.
[pgp-tools.git]
/
gpg-key2ps
/
gpg-key2ps
diff --git
a/gpg-key2ps/gpg-key2ps
b/gpg-key2ps/gpg-key2ps
index 5b875856fd6d09b102f04db3a06790627001a374..2dfdc1745498395122a1f870df74441e1fea1da0 100755
(executable)
--- a/
gpg-key2ps/gpg-key2ps
+++ b/
gpg-key2ps/gpg-key2ps
@@
-2,8
+2,8
@@
#
# gpg-key2ps: convert a PGP/GnuPG key into paper slips.
# Copyright (C) 2001-2005 Simon Richter
#
# gpg-key2ps: convert a PGP/GnuPG key into paper slips.
# Copyright (C) 2001-2005 Simon Richter
-# Copyright (C) 2005 Thijs Kinkhorst
-# Copyright (C) 2005 Christoph Berg <cb@df7cb.de>
+# Copyright (C) 2005
-2007
Thijs Kinkhorst
+# Copyright (C) 2005
-2006
Christoph Berg <cb@df7cb.de>
# Licenced under the GNU General Public License,
# version 2 or later.
#
# Licenced under the GNU General Public License,
# version 2 or later.
#
@@
-15,18
+15,19
@@
use Getopt::Long;
my $version = '$Rev$';
$version =~ s/\$Rev:\s*(\d+)\s*\$/$1/;
my $revokestyle = "hide";
my $version = '$Rev$';
$version =~ s/\$Rev:\s*(\d+)\s*\$/$1/;
my $revokestyle = "hide";
+my $columns = 2;
my $creationdate = scalar(localtime);
sub version($) {
my $fd = shift;
my $creationdate = scalar(localtime);
sub version($) {
my $fd = shift;
- print $fd "gpg-key2ps $version - (c) 2001-200
5
Simon Richter, Thijs Kinkhorst, Christoph Berg\n";
+ print $fd "gpg-key2ps $version - (c) 2001-200
7
Simon Richter, Thijs Kinkhorst, Christoph Berg\n";
}
sub usage($$) {
my ($fd, $exitcode) = @_;
version ($fd);
print $fd <<EOF;
}
sub usage($$) {
my ($fd, $exitcode) = @_;
version ($fd);
print $fd <<EOF;
-Usage: $0 [-p papersize] [-r revoked-style] keyid-or-name ...
+Usage: $0 [-p papersize] [-r revoked-style]
[-1]
keyid-or-name ...
Options:
-p --paper-size
-r --revoked-style
Options:
-p --paper-size
-r --revoked-style
@@
-35,6
+36,7
@@
Options:
note - Add "[revoked]"
show - List revoked uids normally
strike - Strike through lines
note - Add "[revoked]"
show - List revoked uids normally
strike - Strike through lines
+ -1 Only print one column, for extra wide keys
-h --help
-v --version
EOF
-h --help
-v --version
EOF
@@
-52,7
+54,7
@@
if (!GetOptions (
'-p=s' => \$opts->{papersize},
'--paper-size=s' => \$opts->{papersize},
'-r=s' => \$opts->{revokestyle},
'-p=s' => \$opts->{papersize},
'--paper-size=s' => \$opts->{papersize},
'-r=s' => \$opts->{revokestyle},
- '-
-revoked-style=s' => \$opts->{revokestyle
},
+ '-
1' => \$opts->{1
},
)) {
usage(\*STDERR, 1);
}
)) {
usage(\*STDERR, 1);
}
@@
-74,11
+76,13
@@
if ( $revokestyle !~ /^(grey|hide|note|show|strike)$/ ) {
usage (\*STDERR, 1);
}
usage (\*STDERR, 1);
}
+if ( $opts->{1} ) { $columns = 1; }
+
usage(\*STDERR, 1) unless scalar @ARGV >= 1;
# determine the paper size through the paperconf tool
my $w; my $h;
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);
$w=`paperconf -w`;
$h=`paperconf -h`;
chomp($w);
@@
-92,7
+96,8
@@
if ( -x "/usr/bin/paperconf" ) {
# open a gpg process we'll be reading from below
map { s/'/'\\''/g; } @ARGV; # quote single quotes
# open a gpg process we'll be reading from below
map { s/'/'\\''/g; } @ARGV; # quote single quotes
-open(GPG, "gpg --fingerprint --with-colons '". (join "' '", @ARGV) ."' |");
+# --list-key due to #382794
+open(GPG, "gpg --list-key --with-fingerprint --with-colons '". (join "' '", @ARGV) ."' |");
sub start_postscript {
# start the PostScript output
sub start_postscript {
# start the PostScript output
@@
-118,7
+123,7
@@
print <<EOF;
/hline {
30 y 3 add moveto
/hline {
30 y 3 add moveto
- w
2
div 30 sub y 3 add lineto stroke
+ w
$columns
div 30 sub y 3 add lineto stroke
newline
} def
newline
} def
@@
-165,8
+170,6
@@
if ( $revokestyle eq "grey" ) {
print " uid\n";
print " 0 setgray\n";
print "} def\n";
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";
} elsif ( $revokestyle eq "note" ) {
print "/revuid {\n";
print " 50 y moveto (uid) show\n";
@@
-223,7
+226,9
@@
while(<GPG>) {
# user ids
s/^uid:[^:r]*:[^:]*:[^:]*:[^:]*:[^:]*:[^:]*:[^:]*:[^:]*:([^:]*):.*/ ($1) uid/;
# revoked user id
# 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++;
# subkey
s/^sub:[^:]*:([^:]*):([0-9]*):.{8,8}(.{8,8}):([^:]*):[^:]*:[^:]*:[^:]*:[^:]*:[^:]*:[^:]*:.*/ ($4) ($3) $2 ($1) sbk/;
$numlines++;
@@
-248,12
+253,12
@@
print <<EOF;
/y w 20 sub def
1 1 num {
gsave
/y w 20 sub def
1 1 num {
gsave
- 0 0 h
2
div w rectclip
+ 0 0 h
$columns
div w rectclip
/upper y 11 add def
key
newline
/lower y 11 add def
/upper y 11 add def
key
newline
/lower y 11 add def
- 0 upper h
2 div upper h 2
div lower 0 lower 0 upper moveto lineto lineto lineto lineto stroke
+ 0 upper h
$columns div upper h $columns
div lower 0 lower 0 upper moveto lineto lineto lineto lineto stroke
grestore
} for
} def
grestore
} for
} def
@@
-261,9
+266,17
@@
print <<EOF;
w 0 translate
90 rotate
column
w 0 translate
90 rotate
column
-h 2 div 0 translate
+EOF
+
+if ( $columns == 2 ) {
+ print <<EOF;
+h $columns div 0 translate
column
column
+EOF
+}
+
+print <<EOF;
showpage
%%Trailer
showpage
%%Trailer