If SMFilter adds its own headers, couldn't you just write a custom rule for SA that gives any message with those headers a negative score?

----- Original Message ----- From: WFGB Team
To: Sanford Whiteman
Cc: users@spamassassin.apache.org
Sent: Saturday, June 03, 2006 11:31 AM
Subject: Re: Hiring for Spam Assassin Troubleshooting


Wow Thanks Sandy,

I have talked to the SM tech support and have searched through their forum but they believe this is SA issue. That makes a lot of sense. Yes, I am familiar with writing batch files. I am not a god at writing them but I can read and write them. Yes we do use SMFilter but we call the spamassassin.bat from it. (I didn't know we could compile an exe file)
Now, here is the issue I see with the bat file.
There are millions of key phrases. Is there a way in the bat file to point it to some type of a list such as the one spam assassin already has or some type of a database. If I utilize: head -10 %1 | find /I /c "string" then this is going to require me to enter each string on a separate line. If I can utilize that from the SA database that already has these items then it will never go into SA?

Then that brings me to a point of asking, If I can utilize the SA Database using that method, then what good is SA?

Thanks again for the advice on that. I will check into the SM forums to ask about that.

Wayne



-------Original Message-------

From: Sanford Whiteman
Date: 06/03/06 04:51:00
To: spectacularstuff; users@spamassassin.apache.org
Subject: Re: Hiring for Spam Assassin Troubleshooting

We already have SA setup and working with Smartermail.

Well, not really. I'd say part and parcel of any SA-MTA integration is
finding  a way to whitelist messages _before SA is launched_, thus (a)
saving   you   SA's  CPU  and  disk  time  (esp.  since  you're  using
process-based spamassassin and not client/server spamc/spamd), and (b)
eliminating  problems  like  this caused when DNS and/or local content
issues force SA to judge your messages as spammy. SA itself is not the
place for true whitelisting; you really want to do this pre-SA.

Anyway, SmarterMail shells to the external command-line you specify --
you   may   be   calling   SMFilter  (a  tiny  wrapper  for  Clam  and
SpamAssassin),     or    calling    spamassassin.bat    or    compiled
spamassassin.exe  directly  --  passing  the  body  file  name as last
argument. You can thus retrieve the body file name from within a batch
file as %1, if you've ever worked with batch file syntax.

Within  the  first  couple of headers added by SmarterMail, you'll see
whether  the  mail  was  submitted  by an authenticated user or not. I
don't  know  their  exact syntax offhand, but I know that SM does pass
the authentication info to external apps. Ask on the SM forum what the
exact string'll be. Then I'd suggest writing a batch file that, at the
very  top  before  calling  spamassassin,  uses  a text search/replace
utility to search only the first, say, 10 lines for a known string and
skips calling SA if the string is found. Pseudo-batch:

head -10 %1 | find /i /c "string"

if %ERRORLEVEL%==0

    (exit from batch file and return to smartermail, mail was auth'd)

else

    (scan with SA, since authentication string was not found)

This  example uses the unxtools version of head.exe, which you can get
from  http://gnuwin.epfl.ch/apps/unxutils/en/index.html.

While you may not be comfortable with this course of action either, it
does  tap  into a different skill set that may be more familiar to you
than  DNS.  You should have a way going forward of excluding mail from
being even touched by SA.

BTW,  I consider this a SmarterMail issue as much as an SA one, and as
such I hope you have been thorough enough to ask on their forum, or at
least you will now.

--Sandy

Reply via email to