X-Git-Url: https://git.sthu.org/?a=blobdiff_plain;f=caff%2Fcaff;h=97b0aa25ff7d7645aa98854f569a7f0e7ff77add;hb=bafc2c4bab1e0eab8abc124f4d7c703aa1fa43c1;hp=75ffcfd7e700cf098f5306e3cda34f1af2b0ae2e;hpb=56b77d4857a6a177f9d456abb2d2e5296cd86fb7;p=pgp-tools.git diff --git a/caff/caff b/caff/caff index 75ffcfd..97b0aa2 100755 --- a/caff/caff +++ b/caff/caff @@ -235,6 +235,10 @@ The UIDs for which signatures are included in the mail. =back +=item B [string] + +Add a Reply-To: header to messages sent. Default: none. + =item B [string] Address to send blind carbon copies to when sending mail. @@ -329,11 +333,11 @@ sub load_config() { unless (-f $config) { print "No configfile $config present, I will use this template:\n"; my $template = generate_config(); - print "$template\nPress enter to continue."; - ; + print "$template\nPlease edit $config and run caff again.\n"; open F, ">$config" or die "$config: $!"; print F $template; close F; + exit(1); } unless (scalar eval `cat $config`) { die "Couldn't parse $config: $EVAL_ERROR\n" if $EVAL_ERROR; @@ -718,6 +722,7 @@ sub send_mail($$$@) { $message_entity->head->add("Subject", "Your signed PGP key 0x$key_id"); $message_entity->head->add("To", $address); $message_entity->head->add("From", '"'.$CONFIG{'owner'}.'" <'.$CONFIG{'email'}.'>'); + $message_entity->head->add("Reply-To", $CONFIG{'reply-to'}) if defined $CONFIG{'reply-to'}; $message_entity->head->add("Bcc", $CONFIG{'bcc'}) if defined $CONFIG{'bcc'}; $message_entity->head->add("User-Agent", $USER_AGENT); $message_entity->send(); @@ -922,6 +927,7 @@ if ($CONFIG{'no-download'}) { # [GNUPG:] NODATA 1 # [GNUPG:] IMPORT_OK 0 25FC1614B8F87B52FF2F99B962AF4031C82E0039 my %local_keyids = map { $_ => 1 } @KEYIDS; + my $had_v3_keys = 0; for my $line (split /\n/, $status) { if ($line =~ /^\[GNUPG:\] IMPORT_OK \d+ ([0-9A-F]{40})/) { my $imported_key = $1; @@ -940,12 +946,16 @@ if ($CONFIG{'no-download'}) { delete $local_keyids{$speced_key}; unshift @keyids_ok, $imported_key; } elsif ($line =~ /^\[GNUPG:\] (NODATA|IMPORT_RES|IMPORTED) /) { + } elsif ($line =~ /^\[GNUPG:\] IMPORT_OK \d+ ([0-9A-F]{32})/) { + my $imported_key = $1; + notice ("Imported key $1 is a version 3 key. Version 3 keys are obsolete, should not be used, and are not and will not be properly supported."); + $had_v3_keys = 1; } else { notice ("got unknown reply from gpg: $line"); } }; if (scalar %local_keyids) { - notice ("Import failed for: ". (join ' ', keys %local_keyids)."."); + notice ("Import failed for: ". (join ' ', keys %local_keyids)."." . ($had_v3_keys ? " (Or maybe it's one of those ugly v3 keys?)" : "")); exit 1 unless ask ("Some keys could not be imported - continue anyway?", 0); } };