Mailinglist Archive: opensuse-commit (1023 mails)
| < Previous | Next > |
commit t-prot for openSUSE:Factory
- From: root@xxxxxxxxxxxxxxx (h_root)
- Date: Tue, 02 Nov 2010 13:52:04 +0100
- Message-id: <20101102125204.9DF93201E1@xxxxxxxxxxxxxxx>
Hello community,
here is the log from the commit of package t-prot for openSUSE:Factory
checked in at Tue Nov 2 13:52:04 CET 2010.
--------
--- t-prot/t-prot.changes 2010-04-09 11:20:14.000000000 +0200
+++ /mounts/work_src_done/STABLE/t-prot/t-prot.changes 2010-11-01
11:48:22.000000000 +0100
@@ -1,0 +2,11 @@
+Mon Nov 1 10:44:51 UTC 2010 - puzel@xxxxxxxxxx
+
+- update to 2.101
+ * t-prot: Add line to make -m filter Lotus Domino Webserver
+ produced TOFU.
+ * t-prot: Use uniform syntax notation for parameters in command
+ line options.
+ * t-prot, t-prot.1: New command line option --fixind to fix broken
+ quoting (regarding to RFC 3676).
+
+-------------------------------------------------------------------
calling whatdependson for head-i586
Old:
----
t-prot-2.98.tar.bz2
New:
----
t-prot-2.101.tar.bz2
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ t-prot.spec ++++++
--- /var/tmp/diff_new_pack.sO8VL1/_old 2010-11-02 13:50:31.000000000 +0100
+++ /var/tmp/diff_new_pack.sO8VL1/_new 2010-11-02 13:50:31.000000000 +0100
@@ -1,5 +1,5 @@
#
-# spec file for package t-prot (Version 2.98)
+# spec file for package t-prot (Version 2.101)
#
# Copyright (c) 2010 SUSE LINUX Products GmbH, Nuernberg, Germany.
#
@@ -24,7 +24,7 @@
Group: Productivity/Networking/Email/Utilities
AutoReqProv: on
Requires: perl-Getopt-Mixed perl-gettext
-Version: 2.98
+Version: 2.101
Release: 1
Summary: A Display Filter for RFC822 Messages
Source: %{name}-%{version}.tar.bz2
++++++ t-prot-2.98.tar.bz2 -> t-prot-2.101.tar.bz2 ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/t-prot-2.98/ChangeLog new/t-prot-2.101/ChangeLog
--- old/t-prot-2.98/ChangeLog 2010-04-09 08:49:01.000000000 +0200
+++ new/t-prot-2.101/ChangeLog 2010-10-31 12:19:35.000000000 +0100
@@ -1,3 +1,70 @@
+2010-10-31 11:18 Jochen Striepe
+
+ * t-prot: Release as v2.101.
+
+2010-10-31 10:13 Jochen Striepe
+
+ * t-prot: Add just another of mutt's decryption messages to the
+ list. This seems not to be translated yet, so no gettext() is
+ inserted this time.
+
+2010-07-10 19:14 Jochen Striepe
+
+ * t-prot: Release as v2.100.
+
+2010-07-10 12:59 Jochen Striepe
+
+ * t-prot: Add line to make -m filter Lotus Domino Webserver
+ produced TOFU.
+
+2010-07-02 15:52 Jochen Striepe
+
+ * t-prot: Use uniform syntax notation for parameters in command
+ line options.
+
+2010-07-02 15:48 Jochen Striepe
+
+ * t-prot.1: Use uniform syntax notation for parameters in command
+ line options.
+
+2010-07-01 16:02 Jochen Striepe
+
+ * t-prot: Release as v2.99.
+
+2010-07-01 15:58 Jochen Striepe
+
+ * t-prot, t-prot.1: New command line option --fixind to fix broken
+ quoting (regarding to RFC 3676). Perhaps this should not be
+ default, as there might be false positives if the message is
+ already quoted correctly. Quotes with this particular brokenness
+ are quite common, though. Patch by Simon Ruderich, many thanks.
+
+2010-06-09 19:32 Jochen Striepe
+
+ * t-prot: Use index() instead of regex for $indent. Patch by Simon
+ Ruderich.
+
+2010-04-20 09:40 Jochen Striepe
+
+ * t-prot: Revert new handling of empty lines at the beginning of
+ the body, as it removes lines where it should not.
+
+2010-04-20 08:58 Jochen Striepe
+
+ * t-prot: Another bug with -c: Empty lines before the signature
+ were not handled properly. Patch by Simon Ruderich.
+
+2010-04-20 08:57 Jochen Striepe
+
+ * t-prot: This causes -c1 to not create an empty line at the
+ beginning of the message if there were empty lines at the start of
+ the body. Patch by Simon Ruderich.
+
+2010-04-20 08:55 Jochen Striepe
+
+ * t-prot, t-prot.1: Typos and documentation fixes regarding
+ $indent. Many thanks to Simon Ruderich.
+
2010-04-09 06:47 Jochen Striepe
* t-prot: Release as v2.98.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/t-prot-2.98/contrib/t-prot-r1.279-mutt1512.diff
new/t-prot-2.101/contrib/t-prot-r1.279-mutt1512.diff
--- old/t-prot-2.98/contrib/t-prot-r1.279-mutt1512.diff 2010-04-09
08:49:01.000000000 +0200
+++ new/t-prot-2.101/contrib/t-prot-r1.279-mutt1512.diff 1970-01-01
01:00:00.000000000 +0100
@@ -1,102 +0,0 @@
---- t-prot 2010-02-11 11:41:15.000000000 +0100
-+++ t-prot-m1512 2010-02-11 11:48:49.000000000 +0100
-@@ -32,7 +32,7 @@
-
- $mutt_attachment $mutt_contenttype $mutt_pgpsigned $mutt_beginsigned
- $mutt_pgpclearsigned $mutt_pgpclearsigstart $mutt_pgpencrypted
-- $mutt_pgpoutstart $mutt_pgpoutend
-+ $mutt_pgpoutstart $mutt_pgpoutend $mutt_ssloutstart $mutt_ssloutend
- );
-
-
-@@ -71,6 +71,8 @@
- $mutt_pgpencrypted = '[-- End of PGP/MIME encrypted data --]';
- $mutt_pgpoutstart = '[-- PGP output follows (current time:';
- $mutt_pgpoutend = '[-- End of PGP output --]';
-+$mutt_ssloutstart = '[-- OpenSSL output follows';
-+$mutt_ssloutend = '[-- End of OpenSSL output --]';
-
- # set the defaults to the C locale
- $gpg_WARNING = 'WARNING: ';
-@@ -342,7 +344,7 @@
- for (my $x=0; $x<scalar(@$L); $x++) {
- if ($$V[$x]) { next; }
-
-- if ($$L[$x]=~/^(?:\e[^\a]+\a)?(?:\Q$mutt_pgpoutstart\E)/o)
-+ if
($$L[$x]=~/^(?:\e[^\a]+\a)?(?:\Q$mutt_pgpoutstart\E|\Q$mutt_ssloutstart\E)/o)
- {
- my $from;
- for (my $m=0; $m<scalar(@$H); $m++) {
-@@ -368,7 +370,7 @@
- $i--;
- }
- }
-- elsif ($$L[$i]=~/^(?:\e[^\a]+\a)?(?:\Q$mutt_pgpoutend\E)/o) {
-+ elsif
($$L[$i]=~/^(?:\e[^\a]+\a)?(?:\Q$mutt_pgpoutend\E|\Q$mutt_ssloutend\E)/o) {
- if ($pgpmove ||
- ($pgpmovevrf && (!$sigint) && verified($L, $x+1, $i)))
- {
-@@ -698,7 +700,7 @@
- 'Forwarded message',
- 'Weitergeleitete Nachricht / Forwarded Message');
- my $k = 0; # any text above?
-- my $tmp = 0; # flagged if inside PGP output
-+ my $tmp = 0; # flagged if inside PGP or SSL output
-
- DONE: for ($x=0; $x<scalar(@$lines); $x++) {
- if (!$vrb[$x]) {
-@@ -726,9 +728,11 @@
- ((!$spass) || index($$lines[$x], $spass_prefix)!=0))
- {
- if ($mua eq 'mutt' && (!$tmp) &&
-- $$lines[$x] =~
-- /^(?:\e[^\a]+\a)?(?:\Q$mutt_pgpoutstart\E)/o) {
-- $tmp = 1;
-+ ($$lines[$x] =~
-+ /^(?:\e[^\a]+\a)?(?:\Q$mutt_pgpoutstart\E)/o ||
-+ $$lines[$x] =~
-+ /^(?:\e[^\a]+\a)?(?:\Q$mutt_ssloutstart\E)/o)) {
-+ $tmp = 1;
- } elsif ($mua eq 'mutt' && $tmp &&
- ($$lines[$x] =~
- /^(?:\e[^\a]+\a)?(?:\Q$mutt_beginsigned\E)/o ||
-@@ -1004,8 +1008,8 @@
- Locale::gettext::gettext("[-- Type: %s/%s, Encoding: %s,
Size: %s --]\n") =~
- m/^([^%]*)/;
- ($mutt_pgpsigned) =
-- Locale::gettext::gettext("[-- End of signed data --]\n") =~
-- m/^(.*)\n/m;
-+ Locale::gettext::gettext("\n[-- End of signed data --]\n") =~
-+ m/^\n*(.*)\n/m;
- ($mutt_beginsigned) =
- Locale::gettext::gettext("[-- The following data is signed
--]\n\n") =~
- m/^(.*)\n/m;
-@@ -1013,16 +1017,24 @@
- Locale::gettext::gettext("[-- END PGP SIGNED MESSAGE --]\n")
=~
- m/^(.*)\n/m;
- ($mutt_pgpclearsigstart) =
-- Locale::gettext::gettext("[-- BEGIN PGP SIGNED MESSAGE
--]\n") =~
-+ Locale::gettext::gettext("[-- BEGIN PGP SIGNED MESSAGE
--]\n\n") =~
- m/^(.*)\n/m;
- ($mutt_pgpencrypted) =
- Locale::gettext::gettext("[-- End of PGP/MIME encrypted data
--]\n") =~
- m/^(.*)\n/m;
- ($mutt_pgpoutstart) =
-- Locale::gettext::gettext("[-- PGP output follows (current
time: %c) --]\n") =~
-- m/^([^%]*)/;
-+ Locale::gettext::gettext("[-- %s output follows%s --]\n") =~
-+ m/^(.*)%s/;
-+ $mutt_pgpoutstart =~ s/%s/PGP/;
- ($mutt_pgpoutend) =
-- Locale::gettext::gettext("[-- End of PGP output --]\n") =~
-+ Locale::gettext::gettext("[-- End of PGP output --]\n\n") =~
-+ m/^(.*)\n/m;
-+ ($mutt_ssloutstart) =
-+ Locale::gettext::gettext("[-- %s output follows%s --]\n") =~
-+ m/^(.*)%s/;
-+ $mutt_ssloutstart =~ s/%s/OpenSSL/;
-+ ($mutt_ssloutend) =
-+ Locale::gettext::gettext("[-- End of OpenSSL output --]\n\n")
=~
- m/^(.*)\n/m;
-
- Locale::gettext::textdomain('gnupg');
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/t-prot-2.98/contrib/t-prot-r1.311-mutt1512.diff
new/t-prot-2.101/contrib/t-prot-r1.311-mutt1512.diff
--- old/t-prot-2.98/contrib/t-prot-r1.311-mutt1512.diff 1970-01-01
01:00:00.000000000 +0100
+++ new/t-prot-2.101/contrib/t-prot-r1.311-mutt1512.diff 2010-10-31
12:19:35.000000000 +0100
@@ -0,0 +1,101 @@
+--- t-prot 2010-10-31 11:13:22.000000000 +0100
++++ t-prot-mutt1520 2010-10-31 11:40:45.000000000 +0100
+@@ -33,6 +33,7 @@
+ $mutt_attachment $mutt_contenttype $mutt_pgpsigned $mutt_beginsigned
+ $mutt_pgpclearsigned $mutt_pgpclearsigstart $mutt_pgpencrypted
+ $mutt_pgpoutstart $mutt_pgpoutend $mutt_pgpcryptend $mutt_pgpcryptstart
++ $mutt_ssloutstart $mutt_ssloutend
+ );
+
+
+@@ -74,6 +75,8 @@
+ $mutt_pgpencrypted = '[-- End of PGP/MIME encrypted data --]';
+ $mutt_pgpoutstart = '[-- PGP output follows (current time:';
+ $mutt_pgpoutend = '[-- End of PGP output --]';
++$mutt_ssloutstart = '[-- OpenSSL output follows';
++$mutt_ssloutend = '[-- End of OpenSSL output --]';
+
+ # set the defaults to the C locale
+ $gpg_WARNING = 'WARNING: ';
+@@ -412,7 +415,7 @@
+ for (my $x=0; $x<scalar(@$L); $x++) {
+ if ($$V[$x]) { next; }
+
+- if ($$L[$x]=~/^(?:\e[^\a]+\a)?(?:\Q$mutt_pgpoutstart\E)/o)
++ if
($$L[$x]=~/^(?:\e[^\a]+\a)?(?:\Q$mutt_pgpoutstart\E|\Q$mutt_ssloutstart\E)/o)
+ {
+ my $from;
+ for (my $m=0; $m<scalar(@$H); $m++) {
+@@ -438,7 +441,7 @@
+ $i--;
+ }
+ }
+- elsif ($$L[$i]=~/^(?:\e[^\a]+\a)?(?:\Q$mutt_pgpoutend\E)/o) {
++ elsif
($$L[$i]=~/^(?:\e[^\a]+\a)?(?:\Q$mutt_pgpoutend\E|\Q$mutt_ssloutend\E)/o) {
+ if ($pgpmove ||
+ ($pgpmovevrf && (!$sigint) && verified($L, $x+1, $i)))
+ {
+@@ -804,7 +807,7 @@
+ 'Weitergeleitete Nachricht / Forwarded Message',
+ '[A-Za-z ]+ <(\w[\w.+-]*@(?:[\w.+-]+\.)+[A-Za-z]{2,})>
schrieb:');
+ my $k = 0; # any text above?
+- my $tmp = 0; # flagged if inside PGP output
++ my $tmp = 0; # flagged if inside PGP or SSL output
+
+ DONE: for ($x=0; $x<scalar(@$lines); $x++) {
+ if (!$vrb[$x]) {
+@@ -832,9 +835,11 @@
+ ((!$spass) || index($$lines[$x], $spass_prefix)!=0))
+ {
+ if ($mua eq 'mutt' && (!$tmp) &&
+- $$lines[$x] =~
+- /^(?:\e[^\a]+\a)?(?:\Q$mutt_pgpoutstart\E)/o) {
+- $tmp = 1;
++ ($$lines[$x] =~
++ /^(?:\e[^\a]+\a)?(?:\Q$mutt_pgpoutstart\E)/o ||
++ $$lines[$x] =~
++ /^(?:\e[^\a]+\a)?(?:\Q$mutt_ssloutstart\E)/o)) {
++ $tmp = 1;
+ } elsif ($mua eq 'mutt' && $tmp &&
+ ($$lines[$x] =~
+ /^(?:\e[^\a]+\a)?(?:\Q$mutt_beginsigned\E)/o ||
+@@ -1130,8 +1135,8 @@
+ Locale::gettext::gettext("[-- Type: %s/%s, Encoding: %s,
Size: %s --]\n") =~
+ m/^([^%]*)/;
+ ($mutt_pgpsigned) =
+- Locale::gettext::gettext("[-- End of signed data --]\n") =~
+- m/^(.*)\n/m;
++ Locale::gettext::gettext("\n[-- End of signed data --]\n") =~
++ m/^\n*(.*)\n/m;
+ ($mutt_beginsigned) =
+ Locale::gettext::gettext("[-- The following data is signed
--]\n\n") =~
+ m/^(.*)\n/m;
+@@ -1139,16 +1144,24 @@
+ Locale::gettext::gettext("[-- END PGP SIGNED MESSAGE --]\n")
=~
+ m/^(.*)\n/m;
+ ($mutt_pgpclearsigstart) =
+- Locale::gettext::gettext("[-- BEGIN PGP SIGNED MESSAGE
--]\n") =~
++ Locale::gettext::gettext("[-- BEGIN PGP SIGNED MESSAGE
--]\n\n") =~
+ m/^(.*)\n/m;
+ ($mutt_pgpencrypted) =
+ Locale::gettext::gettext("[-- End of PGP/MIME encrypted data
--]\n") =~
+ m/^(.*)\n/m;
+ ($mutt_pgpoutstart) =
+- Locale::gettext::gettext("[-- PGP output follows (current
time: %c) --]\n") =~
+- m/^([^%]*)/;
++ sprintf(Locale::gettext::gettext("[-- %s output follows%s
--]\n"), 'PGP', '%s') =~
++ m/^(.*)%s/;
++ $mutt_pgpoutstart =~ s/%s/PGP/;
+ ($mutt_pgpoutend) =
+- Locale::gettext::gettext("[-- End of PGP output --]\n") =~
++ Locale::gettext::gettext("[-- End of PGP output --]\n\n") =~
++ m/^(.*)\n/m;
++ ($mutt_ssloutstart) =
++ Locale::gettext::gettext("[-- %s output follows%s --]\n") =~
++ m/^(.*)%s/;
++ $mutt_ssloutstart =~ s/%s/OpenSSL/;
++ ($mutt_ssloutend) =
++ Locale::gettext::gettext("[-- End of OpenSSL output --]\n\n")
=~
+ m/^(.*)\n/m;
+
+ Locale::gettext::textdomain('gnupg');
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/t-prot-2.98/README new/t-prot-2.101/README
--- old/t-prot-2.98/README 2010-04-09 08:49:01.000000000 +0200
+++ new/t-prot-2.101/README 2010-10-31 12:19:35.000000000 +0100
@@ -17,7 +17,7 @@
2. What does the script do?
It detects, and when demanded hides annoying parts in rfc5322 messages:
TOFU, huge quoted blocks, signatures (especially when they are too long),
- excessive punktuation, blocks of empty lines, trailing spaces and tabs.
+ excessive punctuation, blocks of empty lines, trailing spaces and tabs.
For use inside of MTAs or MDAs it exits with appropriate libc exit codes,
so annoying messages may be bounced easily.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/t-prot-2.98/t-prot new/t-prot-2.101/t-prot
--- old/t-prot-2.98/t-prot 2010-04-09 08:49:01.000000000 +0200
+++ new/t-prot-2.101/t-prot 2010-10-31 12:19:35.000000000 +0100
@@ -1,13 +1,13 @@
#!/usr/bin/perl -w
-# $Id: t-prot,v 1.300 2010/04/09 06:47:11 jochen Exp $
+# $Id: t-prot,v 1.312 2010/10/31 11:18:15 jochen Exp $
require 5.006;
use strict;
use Fcntl qw(O_EXCL O_WRONLY O_CREAT);
use Getopt::Long qw(:config gnu_getopt no_ignore_case);
-use constant VER => '2.98';
+use constant VER => '2.101';
use constant REV => '';
-use constant REL => q$Revision: 1.300 $=~m/(\d+(?:\.\d+)+)/;
+use constant REL => q$Revision: 1.312 $=~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';
@@ -22,7 +22,7 @@
use constant EX_BOUNCE => EX_UNAVAILABLE;
use vars qw(
$ad $ads $bigqn $bigqx $boun $check $check_ratio $cr $crshrink $diff $elli
- $footers $ftr_ad $ftr_ml $hdrs $indent $kamm $kdiff $kminl $kmaxl
+ $fixind $footers $ftr_ad $ftr_ml $hdrs $indent $kamm $kdiff $kminl $kmaxl
$lax $lsig $maxsig $maxlines $mda $ml $gw $ms $ms_smart $msg_quote
$msg_ratio $mua $nohdr $ofile $pgpshort $pgpmove $pgpmovevrf $reply
$sani $sig $sigint $sign $spass $spass_prefix $sysl $trad $trsp
@@ -32,7 +32,7 @@
$mutt_attachment $mutt_contenttype $mutt_pgpsigned $mutt_beginsigned
$mutt_pgpclearsigned $mutt_pgpclearsigstart $mutt_pgpencrypted
- $mutt_pgpoutstart $mutt_pgpoutend
+ $mutt_pgpoutstart $mutt_pgpoutend $mutt_pgpcryptend $mutt_pgpcryptstart
);
@@ -43,7 +43,7 @@
$maxsig = 4; # max. valid signature length
$maxlines = undef; # no limit of message lines
$crshrink = 2; # multiple blank lines are shrunk to $crshrink lines
-$indent = '>'; # Indent string, regexp to identify a quoted line
+$indent = '>'; # Indent string to identify a quoted line
$kminl = 65; # see decomb() for details
$kmaxl = 80;
$kdiff = 20;
@@ -68,6 +68,8 @@
$mutt_pgpsigned = '[-- End of signed data --]';
$mutt_beginsigned = '[-- The following data is signed --]';
$mutt_pgpclearsigstart = '[-- BEGIN PGP SIGNED MESSAGE --]';
+$mutt_pgpcryptend = '[-- END PGP MESSAGE --]';
+$mutt_pgpcryptstart = '[-- BEGIN PGP MESSAGE --]';
$mutt_pgpclearsigned = '[-- END PGP SIGNED MESSAGE --]';
$mutt_pgpencrypted = '[-- End of PGP/MIME encrypted data --]';
$mutt_pgpoutstart = '[-- PGP output follows (current time:';
@@ -89,45 +91,46 @@
# help(): print help text and exit with appropriate exit code
sub help {
print "Usage: $0 [options]
- -A DIRECTORY ad footer directory, treat ad footers as signature
+ -A=DIRECTORY ad footer directory, treat ad footers as signature
-a remove ad footers; requires -A
--bigq[=n[,x]] remove all but x lines of quotes with more than n
lines; default is n=30 and x=10
--body input has no headers; does not work with --pgp-short;
multipart messages will not be detected
- -c[n] merge multiple blank lines to n lines (default is 2)
+ -c[=n] merge multiple blank lines to n lines (default is 2)
--check[=FLAGS] check various criteria, print error message and quit;
see man page for details
-d, --debug print notice to syslog when bouncing; requires -p
--diff tolerate diffs
-e force ellipsis for excessive punctuation
+ --fixind fix quotes to adhere to RFC 3676
--ftr-ad enable aggressive ad footer matching; requires -A
--ftr-ml enable aggressive mailing list footer matching; req. -L
--groupwise delete Novell Groupwise style TOFU
-h, --help show this short help and exit
- -i INFILE file to be read; '-' for STDIN (default)
+ -i=INFILE file to be read; '-' for STDIN (default)
-k try to fix \"Kammquotes\"
--kdiff=n max. length difference between wrapped lines; req. -k
--kmaxl=n max. line length for wrapped line; requires -k
--kminl=n min. line length for wrapped line; requires -k
- -L DIRECTORY mailing list footer directory, treat mailing list
+ -L=DIRECTORY mailing list footer directory, treat mailing list
footers as signature
-l delete mailing list footer; requires -L
--lax-security use unsafe writing method; USE ON YOUR OWN RISK!
--locale=LOCALE internationalization; currently only used with -Mmutt
-M, --mua=MUA turn on special treatment for some mail user agents
- -m delete MS style TOFU; careful: might be too agressive
+ -m delete MS style TOFU; careful: might be too aggressive
--max-lines=x maximum number of message lines
--ms-smart try to be smart with MS style TOFU; req. -Mmutt and -m
- -o OUTFILE file to be written to; '-' for STDOUT (default)
- -P MESSAGE user defined bounce message; requires -p
- -p[ADDRESS] redirect to ADDRESS if no TOFU was found
+ -o=OUTFILE file to be written to; '-' for STDOUT (default)
+ -P=MESSAGE user defined bounce message; requires -p
+ -p[=ADDRESS] redirect to ADDRESS if no TOFU was found
--pgp-move move pgp verification output to bottom; requires -Mmutt
--pgp-move-vrf move pgp output if verified and good; requires -Mmutt
--pgp-short hide non-relevant pgp key uids; requires -Mmutt
-r delete mail header lines
--reply squeeze multiple reply prefixes in subject line
- -S[n] supress signatures with more than n lines (default $maxsig)
+ -S[=n] suppress signatures with more than n lines (default $maxsig)
-s delete signature
--sani sanitize some header fields
--sigsmax[=n] max number of sigs tolerated, no value for unlimited
@@ -341,7 +344,7 @@
}
# debigq(): Finds big quotes (more than $n lines quoted) and deletes all
-# but $x lines of them.
+# but the last $x lines of them.
sub debigq {
my $L = shift; # array of message lines
my $V = shift; # array with verbatim list
@@ -453,6 +456,7 @@
$$L[$x] =~ /^
(?:\e[^\a]+\a)?
(?:\Q$mutt_pgpencrypted\E |
+ \Q$mutt_pgpcryptend\E|
\Q$mutt_pgpclearsigned\E|
\Q$mutt_pgpsigned\E)
/ox)
@@ -660,6 +664,7 @@
(?:\e[^\a]+\a)?
(?:\Q$mutt_pgpsigned\E |
\Q$mutt_pgpclearsigned\E|
+ \Q$mutt_pgpcryptend\E|
\Q$mutt_pgpencrypted\E)
/ox))
{
@@ -760,6 +765,25 @@
}
}
+ # Fix quote markers to adhere to RFC 3676, this changes "> >" to ">> " (if
+ # the default $indent is used). The space after ">" is not mandatory by RFC
+ # but makes the result more readable.
+ if ($fixind) {
+ for ($x=0; $x<scalar(@$lines); $x++) {
+ if (!$vrb[$x] && index($$lines[$x], $indent)==0) {
+ # We match space at the beginning to prevent removal of spaces
+ # directly after the last quote mark.
+ $$lines[$x] =~ /^((\Q$indent\E| )*\Q$indent\E ?)(.*)$/;
+ my $tmp = $1;
+ my $len = length $1;
+ my $rest = $3; # if anything follows after the quote
+ $tmp =~ tr/ //d;
+ $tmp .= ' ' if $rest; # don't create trailing whitespace
+ substr($$lines[$x], 0, $len, $tmp);
+ }
+ }
+ }
+
# See if there is some Kammquoting to fix:
if ($kamm) { decomb($lines, \@vrb); }
@@ -777,7 +801,8 @@
'Oorspronkelijk bericht',
'Message d\'origine',
'Forwarded message',
- 'Weitergeleitete Nachricht / Forwarded Message');
+ 'Weitergeleitete Nachricht / Forwarded Message',
+ '[A-Za-z ]+ <(\w[\w.+-]*@(?:[\w.+-]+\.)+[A-Za-z]{2,})>
schrieb:');
my $k = 0; # any text above?
my $tmp = 0; # flagged if inside PGP output
@@ -814,6 +839,8 @@
($$lines[$x] =~
/^(?:\e[^\a]+\a)?(?:\Q$mutt_beginsigned\E)/o ||
$$lines[$x] =~
+ /^(?:\e[^\a]+\a)?(?:\Q$mutt_pgpcryptstart\E)/o ||
+ $$lines[$x] =~
/^(?:\e[^\a]+\a)?(?:\Q$mutt_pgpclearsigstart\E)/o)) {
$tmp = 0;
} elsif (!$tmp) {
@@ -872,7 +899,7 @@
for (my $i=$#$lines; $i>=0; $i--) {
if ($vrb[$i]) { last; }
- if ($$lines[$i] =~ /^$indent/o) {
+ if (index($$lines[$i], $indent)==0) {
$j++;
$k = $i;
}
@@ -951,6 +978,14 @@
# earlier -- the way it is done right now would screw up the verbatim
# list)
if ($cr) {
+ # When handling regular TOFU above we move the last empty line from
+ # the body to the signature. This prevents the correct removal of
+ # empty lines before a signature (one line less is removed than it
+ # should) when -c and -t are used. This fixes it.
+ if (scalar(@sig) && $sig[0] =~ /^\s*$/) {
+ push(@$lines, shift(@sig));
+ }
+
my $t = 0;
for ($x=scalar(@$lines)-1; $x>=0; $x--) {
if ((!$vrb[$x]) &&
@@ -992,10 +1027,10 @@
($ENV{'LC_MESSAGES'}?$ENV{'LC_MESSAGES'}:$ENV{'LANG'});
# command line switches
-($ad, $ads, $bigqn, $bigqx, $check, $cr, $sysl, $diff, $elli, $footers, $lax,
+($ad, $ads, $bigqn, $bigqx, $check, $cr, $sysl, $diff, $elli, $fixind,
$footers, $lax,
$ml, $gw, $ms, $ms_smart, $mda, $mua, $hdrs, $kamm, $lsig, $nohdr, $reply,
$sani, $sig, $sigint, $spass, $trad, $trsp) =
- (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0);
+ (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0);
my $ifile = '-'; # use STDIN if nothing specified
# temp vals:
@@ -1013,6 +1048,7 @@
'debug|d' => \$sysl,
'diff' => \$diff,
'e' => \$elli,
+ 'fixind' => \$fixind,
'ftr-ad' => \$ftr_ad,
'ftr-ml' => \$ftr_ml,
'groupwise' => \$gw,
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/t-prot-2.98/t-prot.1 new/t-prot-2.101/t-prot.1
--- old/t-prot-2.98/t-prot.1 2010-04-09 08:49:01.000000000 +0200
+++ new/t-prot-2.101/t-prot.1 2010-10-31 12:19:35.000000000 +0100
@@ -1,6 +1,6 @@
-.\" $Id: t-prot.1,v 1.182 2010/04/09 06:45:35 jochen Exp $
+.\" $Id: t-prot.1,v 1.185 2010/07/02 15:48:33 jochen Exp $
.\"
-.TH T-PROT "1" "April 2010" "T-PROT"
+.TH T-PROT "1" "July 2010" "T-PROT"
.SH NAME
t-prot \- TOFU Protection - Display Filter for RFC 5322 messages
.SH SYNOPSIS
@@ -52,10 +52,10 @@
reject/bounce messages depending on t\-prot's result.
.SH INPUT/OUTPUT OPTIONS
.TP
-.BR "\-i" " FILE"
+.BR "\-i" "=FILE"
Defines an input file; default is '\-' i.e. STDIN.
.TP
-.BR "\-o" " FILE"
+.BR "\-o" "=FILE"
Defines the output file; default is STDOUT.
.TP
.B "\-\-body"
@@ -118,9 +118,9 @@
.sp
.IR NOTE :
This requires a directory with footer files to be given with option
-.BR "\-A" " DIRECTORY".
+.BR "\-A" "=DIRECTORY".
.TP
-.BR "\-A" " DIRECTORY"
+.BR "\-A" "=DIRECTORY"
"ad footer directory":
Defines the directory which contains the advertisement list footers (one
footer per file) which are to be tested when removing them with options
@@ -143,7 +143,7 @@
.sp
.IR NOTE :
This requires a directory with footer files to be given with option
-.BR "\-L" " DIRECTORY".
+.BR "\-L" "=DIRECTORY".
.B \-l
is not needed if
.B \-\-ftr\-ml
@@ -159,9 +159,9 @@
.sp
.IR NOTE :
This requires a directory with footer files to be given with option
-.BR "\-L" " DIRECTORY".
+.BR "\-L" "=DIRECTORY".
.TP
-.BR "\-L" " DIRECTORY"
+.BR "\-L" "=DIRECTORY"
"list footer directory":
Defines the directory which contains the mailing list footers (one footer
per file) which are to be tested when removing them with the options
@@ -182,7 +182,7 @@
Blocks of quotes with more than n lines will be shrunk to x lines.
Defaults are 30 for n and 10 for x.
.TP
-.BR "\-c" " [n]"
+.BR "\-c" "[=n]"
"compress":
Squeezes a sequence of blank lines to just n blank lines. n defaults to 2.
.TP
@@ -203,6 +203,14 @@
Squeezes a sequence of four or more dots, exclamation marks, or question marks
to only three dots or marks, respectively.
.TP
+.BR "\-\-fixind"
+Fix broken quotes to adhere to RFC 3676 by removing spaces between quote
+characters and adding a space after them.
+.br
+.IR NOTE :
+This may produce false positives if spaces in between quote characters
+are intended (thus changing the quoting level, see RFC 3676 for details).
+.TP
.B "\-\-groupwise"
Hides TOFU as produced by Novell Groupwise.
.TP
@@ -352,7 +360,7 @@
Subject lines with multiple reply prefixes (Re: and translations into other
languages) get squeezed to only one prefix.
.TP
-.BR "\-S" " [n]"
+.BR "\-S" "[=n]"
"supression of overlong signatures":
Signatures are to be n lines (not including the one containing dash-dash-space)
or less. If there are more, it is probably not that spirited after all.
@@ -400,13 +408,8 @@
.TP
.B "\-t"
"TOFU deletion":
-Hides "traditional style" TOFU, where each line begins with an
-indent string like "> ".
-.br
-(You may edit the indent pattern in the script itself to suit your needs,
-but it is surely
-.I not
-recommended at all.)
+Hides "traditional style" TOFU, where each line begins with the
+indent string ">".
.TP
.B "\-w"
"whitespace deletion":
@@ -415,13 +418,13 @@
between mailing lists or with undetected signature attempts.
.SH DETECTION OPTIONS
.TP
-.BR "\-P" " MESSAGE"
+.BR "\-P" "=MESSAGE"
"user defined bounce message for picky delivery":
You may specify your own bounce message to be returned when we try to deliver
an email and bounce it because there is TOFU inside. See
.BR "\-p" .
.TP
-.BR "\-p" " [ADDRESS]"
+.BR "\-p" "[=ADDRESS]"
"picky delivery":
If we really find some TOFU, abort with exit code
.IR EX_UNAVAILABLE .
@@ -694,7 +697,7 @@
.BR perl (1),
.BR aliases (5),
.sp
-RFCs 2045-2049 and 5322,
+RFCs 2045-2049, 3676 and 5322,
.sp
.I http://freshmeat.net/articles/t\-prot/
(a nice, solid introduction),
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Remember to have fun...
--
To unsubscribe, e-mail: opensuse-commit+unsubscribe@xxxxxxxxxxxx
For additional commands, e-mail: opensuse-commit+help@xxxxxxxxxxxx
| < Previous | Next > |