Make $program/ directories in doc/signing-party
[pgp-tools.git] / keylookup / keylookup
index 0b46a69ae234696d7c564e4b0d28fc45415fee82..4c097a92c4dd2f9bc12d398dc96a2db541e7132b 100755 (executable)
@@ -1,7 +1,7 @@
 #!/usr/bin/perl -w
 
-# (c) 2000, 2002 Christian Kurz <shorty@debian.org>,
-#                Peter Palfrader <peter@palfrader.org>
+# Copyright (c) 2000, 2002 Christian Kurz <shorty@debian.org>,
+# Copyright (c) 2000, 2002, 2005 Peter Palfrader <peter@palfrader.org>
 #
 # $Id$
 #
 #   along with this program; if not, write to the Free Software Foundation,
 #   Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
 #
-# Keylookup homepage: http://www.palfrader.org/keylookup/
-#           CVS, BTS: http://savannah.gnu.org/projects/keylookup/
+# Keylookup is part of pgp-tools:
+#           http://pgp-tools.alioth.debian.org/
+#           svn://svn.debian.org/pgp-tools/trunk/
+#           http://svn.debian.org/wsvn/pgp-tools/trunk/
 
 delete @ENV{'IFS', 'CDPATH', 'ENV', 'BASH_ENV', 'PATH'};
 $|=1; # Always flush buffers
@@ -105,13 +107,10 @@ sub getHits($) {
                my ($type, undef) = split /:/;
                if ($type eq 'pub') {
                        my ($type, $keyid, $algo, $bits, $created, undef, $revoked) = split /:/;
-                       my (undef,undef,undef,$mday,$mon,$year,undef,undef,undef) = localtime ($created);
                        $currentKey = { 'bits' => $bits,
                                        'type' => (defined $ALGOS{$algo} ? $ALGOS{$algo} : '#'.$algo),
                                        'keyid' => $keyid,
-                                       'year' => $year+1900,
-                                       'month' => $mon+1,
-                                       'day' => $mday,
+                                       'created' => $created,
                                        'revoked' => $revoked,
                                        'uid' => []
                                      };
@@ -169,13 +168,15 @@ sub prepareForDialog {
        my $keys = shift;
        my @keyargs = ();
 
-       for my $keyid (keys %$keys) {
+       for my $keyid (sort {- ($keys->{$a}->{'created'} <=> $keys->{$b}->{'created'})} keys %$keys) {
                for (@{ $keys->{$keyid}->{'uid'} }) {
                        push @keyargs,
                                $keys->{$keyid}->{'keyid'},
                                length() <= $MAX_UID_FIELD_LEN ? $_ : substr($_, 0, $MAX_UID_FIELD_LEN-2) . '..',
                                'off';
                };
+               my (undef,undef,undef,$mday,$mon,$year,undef,undef,undef) = localtime ($keys->{$keyid}->{'created'});
+               push @keyargs, $keys->{$keyid}->{'keyid'}, sprintf( "[created: %s-%s-%s]", $year+1900, $mon+1, $mday ), 'off';
                push @keyargs, '-'x8, '-'x40, 'off';
        };
        pop @keyargs;
@@ -189,14 +190,13 @@ sub prepareForTXT {
        my $keys = shift;
        my @lines = ();
 
-       for my $keyid (keys %$keys) {
+       for my $keyid (sort {- ($keys->{$a}->{'created'} <=> $keys->{$b}->{'created'})} keys %$keys) {
+               my (undef,undef,undef,$mday,$mon,$year,undef,undef,undef) = localtime ($keys->{$keyid}->{'created'});
                push @lines, sprintf( "%s%s/%s %s-%s-%s\n",
                                      $keys->{$keyid}->{'bits'},
                                      $keys->{$keyid}->{'type'},
                                      $keys->{$keyid}->{'keyid'},
-                                     $keys->{$keyid}->{'year'},
-                                     $keys->{$keyid}->{'month'},
-                                     $keys->{$keyid}->{'day'} );
+                                     $year+1900, $mon+1, $mday );
                push @lines, map { ' 'x26 . $_ . "\n" } @{ $keys->{$keyid}->{'uid'} };
                push @lines, "\n";
        };