Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: converted to 1.6 markup

Filter mails in Outlook Express

Wiki MarkupIf [SpamAssassin] only adds some mail headers (like X-Spam-Flag) to tag spam and you don't want the subject to be mangled, Outlook Express cannot filter spam to a separate folder. A \[http://article.gmane.org/gmane.mail.spam.spamassassin.general/52651 nice idea\] from a person called Matt was to change the mail's priority to low, because this is something that OE can use for filtering. This can be done using procmail, as \[http://article.gmane.org/gmane.mail.spam.spamassassin.general/52652 shown\] by [DanKohn].as scripted by DanKohn or using maildrop as scripted by Kai Bolay.

This procmail This version has been updated to first remove low priority headers from messages before filtering:

No Format


# Remove low priority headers by piping through formail.
# If end-users filter on low priority headers, this will avoid
# false positives.  This is a procmail "or" rule requiring any
# of the threefour headers to trigger.

:0fw: formail1.lock
* ^X-Priority: 5|\
  ^Priority: Non-Urgent|\
  ^Importance: low|\
  ^X-MSMail-Priority: Low
| formail -I "X-Priority" -I "Priority" -I "Importance" -I "X-MSMail-Priority"

:0fw: spamassassin.lock
* < 256000
| spamassassin

# Pipe likely spam through formail adding
# the threefour headers that represent low priority

:0fw: formail2.lock
* ^X-Spam-Flag: YES
| formail -I "X-Priority: 5" -I "Priority: Non-Urgent" -I "Importance: low" -I "X-MSMail-Priority: Low"

The same with maildrop:

No Format

if ($SIZE < 256000)
{
   exception {
     xfilter "spamassassin"
   }
}

if (/^X-Spam-Flag: YES$/)
{
   # add the four headers that represent low priority
   exception {
     xfilter 'reformail -I "X-Priority: 5" \
                        -I "Priority: Non-Urgent"
                        -I "Importance: low" \
                        -I "X-MSMail-Priority: Low"'
   }
}
else
{
   if (/^X-Priority: 5$/ || \
       /^Priority: Non-Urgent$/ || \
       /^Importance: low$/ || \
       /^X-MSMail-Priority: Low$/)
   {
     # Remove low priority headers by piping through reformail.
     # If end-users filter on low priority headers, this will avoid
     # false positives.
     exception {
       xfilter 'reformail -I "X-Priority:" \
                          -I "Priority:" \
                          -I "Importance:" \
                          -I "X-MSMail-Priority:"'
   }
}