From: martin f. krafft Date: Mon, 31 Aug 2009 08:42:43 +0000 (+0200) Subject: improve sender parsing X-Git-Url: https://git.madduck.net/etc/mailfilter.git/commitdiff_plain/c3d55a5719b81c63c76cd118f47cd56b68a2be9d?ds=sidebyside improve sender parsing --- diff --git a/procmail/defines b/procmail/defines index e10d302..32a6e8f 100644 --- a/procmail/defines +++ b/procmail/defines @@ -117,20 +117,35 @@ ID="$LOGNAME@$HOSTNAME" # message-id INCLUDERC=$PMDIR/get-msgid +:0 +*$ ^From:$RE_EXTRACT_HEADER_VALUE +{ FROM="$MATCH" } + # if $SENDER is undefined or not an email address, get it from the message :0 * !SENDER ?? @ -*$ ^Sender:$RE_EXTRACT_HEADER_VALUE -{ SENDER="$MATCH" } +{ + :0 + *$ ^Sender:$RE_EXTRACT_HEADER_VALUE + { SENDER="$MATCH" } + + :0 E + *$ FROM ?? ^\/${RE_NOT_SPACE}+@${RE_NOT_SPACE}+ + { SENDER="$MATCH" } + + :0 E + * FROM ?? ^.+ <\/[^>]+ + { SENDER="$MATCH" } + + :0 E + * FROM ?? ^.+ \(\/[^\)]+ + { SENDER="$MATCH" } +} :0 *$ ^Date:$RE_EXTRACT_HEADER_VALUE { DATE="$MATCH" } -:0 -*$ ^From:$RE_EXTRACT_HEADER_VALUE -{ FROM="$MATCH" } - :0 *$ ^Subject:$RE_EXTRACT_HEADER_VALUE { diff --git a/procmail/logging b/procmail/logging index 7068e4d..67d7712 100644 --- a/procmail/logging +++ b/procmail/logging @@ -37,6 +37,7 @@ LOG="msgid: $MSGID logfile: $THISLOGFILE_REL date: $DATE (@$OURDATE) from: $FROM +sender: $SENDER original-to: $ORIGINAL_TO subject: $SUBJECT$NL"