X-Git-Url: http://git.sthu.org/?a=blobdiff_plain;ds=sidebyside;f=caff%2Fcaff;h=2fc095df8e093460da63584fc4a7bbccdd6179f1;hb=88e91c7dab59944a9463696712fbfee3602bf7fa;hp=3dd62f10d8e280e01199ae4b715d6f6eda01e973;hpb=17fff4a5e66af8ce769b02eb94a4a06423adb322;p=pgp-tools.git diff --git a/caff/caff b/caff/caff index 3dd62f1..2fc095d 100755 --- a/caff/caff +++ b/caff/caff @@ -4,7 +4,7 @@ # $Id$ # # Copyright (c) 2004, 2005 Peter Palfrader -# Copyright (c) 2005 Christoph Berg +# Copyright (c) 2005, 2006 Christoph Berg # # All rights reserved. # @@ -203,6 +203,10 @@ This is useful for offline signing. Default: B<0>. Don't export UIDs by default, on which your latest signature is older than this age. Default: B<24*60*60> (i.e. one day). +=item B [string] + +Select the key that is used for signing, in case you have more than one key. + =head2 Mail settings =item B [boolean] @@ -334,9 +338,12 @@ sub generate_config() { my $gecos = defined $ENV{'LOGNAME'} ? (getpwnam($ENV{LOGNAME}))[6] : undef; my $email; my @keys; - my $hostname = `hostname -f`; + # BSD does not have hostname -f, so we try without -f first + my $hostname = `hostname`; + $hostname = `hostname -f` unless $hostname =~ /\./; chomp $hostname; my ($Cgecos,$Cemail,$Ckeys) = ('','',''); + if (defined $gecos) { $gecos =~ s/,.*//; @@ -632,7 +639,7 @@ my $KEYEDIT_KEYEDIT_OR_DELSIG_PROMPT = '^\[GNUPG:\] (GET_BOOL keyedit.delsig|GET my $KEYEDIT_DELSUBKEY_PROMPT = '^\[GNUPG:\] GET_BOOL keyedit.remove.subkey'; load_config; -my $USER_AGENT = "caff $VERSION - (c) 2004, 2005 Peter Palfrader et al."; +my $USER_AGENT = "caff $VERSION - http://pgp-tools.alioth.debian.org/"; my $KEYSBASE = $CONFIG{'caffhome'}.'/keys'; my $GNUPGHOME = $CONFIG{'caffhome'}.'/gnupghome'; @@ -647,7 +654,7 @@ my $DATE_STRING = sprintf("%04d-%02d-%02d", $year+1900, $mon+1, $mday); sub version($) { my ($fd) = @_; - print $fd "caff $VERSION - (c) 2004, 2005 Peter Palfrader et al.\n"; + print $fd "caff $VERSION - (c) 2004, 2005, 2006 Peter Palfrader et al.\n"; }; sub usage($$) { @@ -888,13 +895,18 @@ if ($params->{'version'}) { }; usage(\*STDERR, 1) unless scalar @ARGV >= 1; +$CONFIG{'local-user'} = $params->{'local-user'} if defined $params->{'local-user'}; +$CONFIG{'no-download'} = $params->{'no-download'} if defined $params->{'no-download'}; +$CONFIG{'no-mail'} = $params->{'no-mail'} if defined $params->{'no-mail'}; +$CONFIG{'mail'} = $params->{'mail'} if defined $params->{'mail'}; +$CONFIG{'no-sign'} = $params->{'no-sign'} if defined $params->{'no-sign'}; +push @{$CONFIG{'key-files'}}, @{$params->{'key-files'}} if defined $params->{'key-files'}; - -if ($params->{'local-user'}) { - $USER = $params->{'local-user'}; +if ($CONFIG{'local-user'}) { + $USER = $CONFIG{'local-user'}; $USER =~ s/^0x//i; unless ($USER =~ /^([A-F0-9]{8}|[A-F0-9]{16}|[A-F0-9]{40})$/i) { - print STDERR "-u $USER is not a keyid.\n"; + print STDERR "Local-user $USER is not a keyid.\n"; usage(\*STDERR, 1); }; $USER = uc($USER); @@ -913,13 +925,6 @@ for my $keyid (@ARGV) { push @KEYIDS, uc($keyid); }; -$CONFIG{'no-download'} = $params->{'no-download'} if defined $params->{'no-download'}; -$CONFIG{'no-mail'} = $params->{'no-mail'} if defined $params->{'no-mail'}; -$CONFIG{'mail'} = $params->{'mail'} if defined $params->{'mail'}; -$CONFIG{'no-sign'} = $params->{'no-sign'} if defined $params->{'no-sign'}; -push @{$CONFIG{'key-files'}}, @{$params->{'key-files'}} if defined $params->{'key-files'}; - - ################# # import own keys #################