From 11e1cae0f008f1a45dcc59ae93618711d0019e1b Mon Sep 17 00:00:00 2001 From: kink-guest Date: Sat, 13 Aug 2005 17:57:41 +0000 Subject: [PATCH] * Add comments and licence info to gpg-key2ps * Integrate man page as pod documentation * Update FSF address. git-svn-id: svn://svn.debian.org/pgp-tools/trunk@174 b513b33f-fedd-0310-b452-c3deb5f4c849 --- gpg-key2ps/Makefile | 7 ++++ gpg-key2ps/README | 4 +-- gpg-key2ps/gpg-key2ps | 79 +++++++++++++++++++++++++++++++++++++++++ gpg-key2ps/gpg-key2ps.1 | 40 --------------------- 4 files changed, 88 insertions(+), 42 deletions(-) create mode 100644 gpg-key2ps/Makefile delete mode 100644 gpg-key2ps/gpg-key2ps.1 diff --git a/gpg-key2ps/Makefile b/gpg-key2ps/Makefile new file mode 100644 index 0000000..4e96d48 --- /dev/null +++ b/gpg-key2ps/Makefile @@ -0,0 +1,7 @@ +all: gpg-key2ps.1 + +gpg-key2ps.1: gpg-key2ps + pod2man $< > $@ + +clean: + rm -f gpg-key2ps.1 diff --git a/gpg-key2ps/README b/gpg-key2ps/README index 94a2558..0f3befb 100644 --- a/gpg-key2ps/README +++ b/gpg-key2ps/README @@ -38,7 +38,7 @@ Copyright (C) 2001-2005 Simon Richter and Thijs Kinkhorst You should have received a copy of the GNU General Public License with the Debian GNU/Linux distribution in file /usr/share/common-licenses/GPL; - if not, write to the Free Software Foundation, Inc., 59 Temple Place, - Suite 330, Boston, MA 02111-1307 USA + if not, write to the Free Software Foundation, Inc., 51 Franklin St, + Fifth Floor, Boston, MA 02110-1301, USA diff --git a/gpg-key2ps/gpg-key2ps b/gpg-key2ps/gpg-key2ps index e1b1515..ca6244f 100755 --- a/gpg-key2ps/gpg-key2ps +++ b/gpg-key2ps/gpg-key2ps @@ -1,6 +1,9 @@ #!/usr/bin/perl -w # # gpg-key2ps: convert a PGP/GnuPG key into paper slips. +# Copyright (C) 2001-2005 Simon Richter and Thijs Kinkhorst +# Licenced under the GNU General Public License, +# version 2 or later. # # $Id$ @@ -18,6 +21,7 @@ if ( $#ARGV < 0 ) { exit 1; } +# fetch command line parameters my %opts; getopt('pr', \%opts); if ( $opts{r} ) { $revokestyle = $opts{'r'}; } @@ -34,6 +38,7 @@ if ( $revokestyle !~ /^(grey|hide|note|show|strike)$/ ) { exit 1; } +# determine default papersize through the paperconf tool my $w; my $h; if ( -x "/usr/bin/paperconf" ) { $w=`paperconf -w`; @@ -46,13 +51,18 @@ if ( -x "/usr/bin/paperconf" ) { $h=842; } +# check if key exists +# can't check that accurately through the 'open' call below +# so have to run gpg twice). Please supply a better way. if ( system( "gpg --fingerprint $keyids >/dev/null" ) != 0 ) { print STDERR "Key not found. Try 'gpg --list-keys'\n"; exit 1; } +# open a gpg process we'll be reading from below open(GPG, "gpg --fingerprint --with-colons $keyids |"); +# start the PostScript output print <) { + # we don't use these if ( /^(tru|uat):/ ) { next; } + # every primary uid causes an extra line because of the separator if ( /^pub:/ ) { $numlines++; } + # primary uid s/^pub:[^:]*:([^:]*):([0-9]*):.{8,8}(.{8,8}):([^:]*):[^:]*:[^:]*:[^:]*:([^:]*):[^:]*:[^:]*:.*/ ($5) ($4) ($3) $2 ($1) pub/; + # fingerprint, format it nicely with spaces if ( /^fpr:[^:]*:[^:]*:[^:]*:[^:]*:[^:]*:[^:]*:[^:]*:[^:]*:([^:]*):.*/ ) { my $fpr = $1; # v4 key @@ -166,15 +183,20 @@ while() { $fpr =~ s/(\w{2})(\w{2})(\w{2})(\w{2})(\w{2})(\w{2})(\w{2})(\w{2})(\w{2})(\w{2})(\w{2})(\w{2})(\w{2})(\w{2})(\w{2})(\w{2})/$1 $2 $3 $4 $5 $6 $7 $8 $9 $10 $11 $12 $13 $14 $15 $16/g; $_ = " ($fpr) fpr\n"; } + # user id's s/^uid:[^:r]*:[^:]*:[^:]*:[^:]*:[^:]*:[^:]*:[^:]*:[^:]*:([^:]*):.*/ ($1) uid/; s/^uid:[^:r]*:[^:]*:[^:]*:[^:]*:[^:]*:[^:]*:[^:]*:[^:]*:([^:]*):.*/ ($1) uid/; + # revoked user id s/^uid:r[^:]*:[^:]*:[^:]*:[^:]*:[^:]*:[^:]*:[^:]*:[^:]*:([^:]*):.*/ ($1) revuid/; + # subkey s/^sub:[^:]*:([^:]*):([0-9]*):.{8,8}(.{8,8}):([^:]*):[^:]*:[^:]*:[^:]*:[^:]*:[^:]*:[^:]*:.*/ ($4) ($3) $2 ($1) sbk/; $numlines++; + # print this line print; } close(GPG); +# output the remaining postscript print < - generates a PS file from a GnuPG keyring + +=head1 SYNOPSIS + +B [-r I] [-p I] II<[> I I<...>I<]>>I<]> + +=head1 DESCRIPTION + +gpg-key2ps generates a PostScript file with your OpenPGP key fingerprint (repeated +as often as it fits) useful for keysigning parties. The only argument is the same +as you would pass to GPG's list-keys command, either a key-id or a (partial) name. +The PS data is written to stdout. + +=head1 OPTIONS + +=over + +=item -p I + +Select the output paper size. Default is to look into /etc/papersize or A4 if +libpaper isn't installed. + +=item -r I + +Select how to mark revoked UIDs. Five styles are available: +B (don't show at all), +B (show normally), +B (display in 50% grey), +B (add a note), and +B (strike through). + +=item I + +Keyid's to print. Multiple can be separated by spaces. + + +=back + + +=head1 SEE ALSO + +gpg(1) + +http://pgp-tools.alioth.debian.org/ + +=head1 AUTHORS AND COPYRIGHT + +(c) 2001 - 2005 Simon Richter + +(c) 2005 Thijs Kinkhorst + diff --git a/gpg-key2ps/gpg-key2ps.1 b/gpg-key2ps/gpg-key2ps.1 deleted file mode 100644 index dbe9d0a..0000000 --- a/gpg-key2ps/gpg-key2ps.1 +++ /dev/null @@ -1,40 +0,0 @@ -.TH GPG-KEY2PS 1 "February 11, 2001" -.SH NAME -gpg\-key2ps \- generates a PS file from a GnuPG keyring -.SH SYNOPSIS -.B gpg-key2ps -.I [-p paper] -.I [-r revoked-style] -.RI id -.SH DESCRIPTION -.B gpg-key2ps -generates a PostScript file with your OpenPGP key fingerprint (repeated as -often as it fits) useful for keysigning parties. The only argument is the same -as you would pass to GPG's list-keys command, either a key-id or a (partial) -name. The PS data is written to stdout. -.SH OPTIONS -.TP 13 -.I \-p paper -Select the output paper size. Default is to look into /etc/papersize or A4 if -libpaper isn't installed -.TP -.I \-r revoked-style -Select how to mark revoked UIDs. Five styles are available: -.B hide -(don't show at all), -.B show -(show normally), -.B grey -(display in 50% grey), -.B note -(add a note), -.B strike -(strike through). -.SH BUGS -.B gpg-key2ps -does not check whether it would be better to print just one column, and wastes -space with "-r hide". -.SH SEE ALSO -.BR gpg (1) -.SH AUTHOR -This manual page was written by Simon Richter . -- 2.30.2