my Dspam setup has Postfix using dspam as a filter like so:

smtp      inet  n       -       n       -       -       smtpd
        -o content_filter=dspam:
dspam           unix    -       n       n       -       -       pipe
        flags=Rhq user=dspam argv=/usr/bin/dspamfilter -f ${sender} -- 
${recipient}


where the payload line in dspamfilter is:


    /usr/bin/dspam --deliver=innocent --stdout --user $USER |
/usr/lib/sendmail -i "$@"


This misses a lot of mail from certain political activism organizations
(because their mail looks highly spammy), and dspam never gets much
chance to train it (even using TOE and retraining it via manual
redirect) largely because there are a host of different senders for each
organization, and the actual sender address is heavily obfuscated by
their list management software and does not match the "From:" header.  I
bounce them to my retraining alias, but they frequently wind up not
getting actually redelivered.

For known sending organizations that I have independently verified, is
there a syntax that I can use in this invocation to force dspam to
classify the message as innocent?  I'm thinking something like the
following:

    if [ (sender is known to be legit but problematic) ] ; then
    {
        # Force whitelisting for certain known senders
        echo "$(date '+%F %T'): Mail to $4 from $2" >>
/var/log/dspam/dspamfilter.log
        /usr/bin/dspam --deliver=innocent,spam --feature=whitelist
--stdout --user $USER | /usr/lib/sendmail -i "$@"
    }
    else
    {
       ...


Should this achieve what I want to do?


-- 
  Phil Stracchino
  Babylon Communications
  ph...@caerllewys.net
  p...@co.ordinate.org
  Landline: 603.293.8485

------------------------------------------------------------------------------
_______________________________________________
Dspam-user mailing list
Dspam-user@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/dspam-user

Reply via email to