From 2a3554b1acd18d3b2904147ce0893cfec02d83a6 Mon Sep 17 00:00:00 2001 From: Eric Wong Date: Sun, 1 May 2016 08:54:10 +0000 Subject: mda: export @BAD_HEADERS variable This should allow users to change and add headers as needed. While we're at it, add the X-Original-To header Postfix likes to add; it seems like pointless bloat with the existence of (important) Received: headers. --- lib/PublicInbox/MDA.pm | 25 ++++++++++++++----------- 1 file changed, 14 insertions(+), 11 deletions(-) (limited to 'lib/PublicInbox') diff --git a/lib/PublicInbox/MDA.pm b/lib/PublicInbox/MDA.pm index b1471022..e1207b56 100644 --- a/lib/PublicInbox/MDA.pm +++ b/lib/PublicInbox/MDA.pm @@ -11,6 +11,19 @@ use Date::Parse qw(strptime); use constant MAX_SIZE => 1024 * 500; # same as spamc default, should be tunable use constant MAX_MID_SIZE => 244; # max term size - 1 in Xapian +our @BAD_HEADERS = ( + # postfix + qw(delivered-to x-original-to), # prevent training loops + + # The rest are taken from Mailman 2.1.15: + # could contain passwords: + qw(approved approve x-approved x-approve urgent), + # could be used phishing: + qw(return-receipt-to disposition-notification-to x-confirm-reading-to), + # Pegasus mail: + qw(x-pmrqc) +); + # drop plus addressing for matching sub __drop_plus { my ($str_addr) = @_; @@ -70,17 +83,7 @@ sub set_list_headers { $simple->header_set("List-Id", "<$pa>"); # RFC2919 } - foreach my $h (qw(delivered-to), # prevent training loops - # The rest are taken from Mailman 2.1.15 - # could contain passwords: - qw(approved approve x-approved x-approve urgent), - # could be used phishing: - qw(return-receipt-to disposition-notification-to - x-confirm-reading-to), - # Pegasus mail: - qw(x-pmrqc)) { - $simple->header_set($h); - } + $simple->header_set($_) foreach @BAD_HEADERS; } 1; -- cgit v1.2.3-24-ge0c7