#!/usr/bin/perl -w
-# $Id: t-prot,v 1.269 2010/01/05 12:05:03 jochen Exp $
+# $Id: t-prot,v 1.277 2010/02/06 03:29:23 jochen Exp $
require 5.006;
use strict;
use Fcntl qw(O_EXCL O_WRONLY O_CREAT);
use Getopt::Mixed qw(nextOption);
-use constant VER => '2.11';
+use constant VER => '2.13';
use constant REV => '';
-use constant REL => q$Revision: 1.269 $=~m/(\d+(?:\.\d+)+)/;
+use constant REL => q$Revision: 1.277 $=~m/(\d+(?:\.\d+)+)/;
# MTA expecting mail on STDIN
# (you might have to adjust this if using a different MTA)
use constant SENDMAIL => '/usr/sbin/sendmail -oi';
);
-# Please adjust these vals to your needs (they are no constants because
-# command line can change them or they are used in rexexp's):
+# Please adjust these vals to your needs only if you know what you are
+# doing. They are no constants because command line can change them or
+# they are used in some rexexp.
$0 =~ s!^.*/!!;
$maxsig = 4; # max. valid signature length
$maxlines = undef; # no limit of message lines
if ((!$k) && $$lines[$x] !~ /^\s*$/o &&
((!$mua) ||
($mua eq 'mutt' &&
+ # this line seems not necessary since mutt-1.5.18:
+ $$lines[$x] !~ /^\e[^\a]+\a$/o &&
$$lines[$x] !~
/^(?:\e[^\a]+\a)?(?:\Q$mutt_attachment\E)/o &&
$$lines[$x] !~
}
}
-else {
- if ($ms_smart || $pgpshort || $pgpmove || $pgpmovevrf) { help(); }
-}
+elsif ($ms_smart || $pgpshort || $pgpmove || $pgpmovevrf) { help(); }
# Read message:
# First, check msg length and stop processing if msg is too long:
if ((defined $maxlines) && (@message > $maxlines)) {
if ($ofile ne 'NONE') {
+ if ($mua eq 'mutt') {
+ my $x = 0;
+ if (!$nohdr) {
+ do { $x++; } while ($x<$#message && $message[$x]!~/^$/);
+ $x++;
+ }
+ splice(@message, $x, 0,
+ ("[---=| Processing by $0 skipped: message too long |=---]\n\n"));
+ }
+
write_msg(($mda?'|'.SENDMAIL." $mda":">$ofile"), \@message);
}
+ if ($mua eq 'mutt') { exit(EX_OK); }
exit(EX_DATAERR);
}