diff options
Diffstat (limited to 'tools/ring-a-party')
-rwxr-xr-x | tools/ring-a-party | 118 |
1 files changed, 0 insertions, 118 deletions
diff --git a/tools/ring-a-party b/tools/ring-a-party deleted file mode 100755 index 1993e2732..000000000 --- a/tools/ring-a-party +++ /dev/null @@ -1,118 +0,0 @@ -#!/bin/sh -# ring-a-party - print a keyring suitable for a key signing party -# Copyright (C) 2000, 2001 Free Software Foundation, Inc. -# -# This file is free software; as a special exception the author gives -# unlimited permission to copy and/or distribute it, with or without -# modifications, as long as this notice is preserved. -# -# This program is distributed in the hope that it will be useful, but -# WITHOUT ANY WARRANTY, to the extent permitted by law; without even the -# implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. - -if [ $# -lt 1 ]; then - echo "usage: ring-a-party keyring [headerline]" >&2 - exit 1 -fi - -keyring="$1" -hdrline="$1" -if [ $# -gt 1 ]; then - hdrline="$2" -fi - -if [ ! -f $keyring ]; then - echo "ring-a-party: '$keyring': no such file" >&2 - exit 1 -fi - -echo "ring-a-party: output will be written to 'a.pub'" >&2 - - -gpg --dry-run --with-fingerprint --with-colons $keyring \ - | gawk -v "KEYRING=$hdrline" ' -BEGIN { FS=":" - algos[1] = "RSA"; - algos[16] = "ElGamal"; - algos[17] = "DSA"; - any = 0; - lines = -1; - page = 0; - now = strftime("%b %d %H:%M %Y"); - } -END { - if (any) myflush(); -} -$1 == "pub" { - if( any ) myflush(); - uidcount = 0; - signencrypt = 0; - uids[uidcount++] = $10; - nbits = $3; - keyid = substr($5,9); - created = $6; - expires = $7; - algostr = mapalgo($4); - if( $4 == 20 || $4 == 1 ) signencrypt = 1; - any = 1; - } -$1 == "fpr" { fpr = $10 } -$1 == "uid" { uids[uidcount++] = $10 } -$1 == "sub" { if( $4 != 17 && $4 != 3 ) signencrypt=1 } - -function myflush() -{ - # fixme: take lines to print here into account - if( lines > 45 || lines == -1 ) { - if( lines != -1 ) printf "\f"; - page++; - printf "%s %-50.50s Page %d\n\n", now, KEYRING, page ; - printf " Type Bits KeyID Created Expires Algorithm Use\n\n"; - lines = 1; - } - printf "[ ] pub %04d 0x%s %10s %10s %-10s %15s\n", - nbits, keyid, created, expires == ""? "----------":expires, algostr, - signencrypt == 1? "Sign & Encrypt":"Sign only"; - length(fpr) == 40 ? printfpr20( fpr ) : printfpr16( fpr ); - lnes += 2; - for( i=0; i < uidcount; i++ ) { - printf "( ) uid %s\n", uids[i]; - lines++; - } - printf "\n\n"; - lines += 2; -} - -function mapalgo( no ) -{ - if( no in algos ) - return algos[no]; - return sprintf( "algoID=%ds", no ); -} - - -function printfpr16( s ) -{ - printf " f16 Fingerprint16 ="; - for(i=0; i < 16; i++ ) { - if( i == 8 ) printf " "; - printf " %s", substr( s, i*2+1, 2 ); - } - printf "\n" -} - -function printfpr20( s ) -{ - printf " f20 Fingerprint20 ="; - for(i=0; i < 10; i++ ) { - if( i == 5 ) printf " "; - printf " %s", substr( s, i*4+1, 4 ); - } - printf "\n" -} - -' | tee a.pub | gpg --print-mds - - - - |