Tony Earnshaw napisał(a):
Marcin Krol wrote, on 06. feb 2007 15:49:

Does anyone know how to get DSPAM explicitly recognize the address fed to it as whitelisted?

dspam will whitelist automatically, there's nothing you can do to change this behavior short of completely rewriting the source code. The README says as much - but one has to read it first, granted ;)

Believe me, I've done the RTFM:

whitelist:  Automatic whitelisting.  DSPAM will keep track of the entire
"From:" line for each message received per user, and automatically
            whitelist messages from senders with more than 10 innocent
            messages and zero spams.  Once the user reports a spam from the
sender, automatic whitelisting will automatically be deactivated
            for that sender.  Since DSPAM uses the entire "From:" line, and
            not just the sender's email address, automatic whitelisting is
a very safe approach to improving accuracy during initial training.

[...]

 whitelistThreshold { Integer }
Overrides the default number of times a From: header has been seen before
   it is automatically whitelisted. (default:10)


Not good enough for me: I can't afford risking whitelisting spammers if I set this, say, to 3, and on the other hand I can't afford not whitelisting people I know for sure are not to be subjected to antispam checks.

Automatic whitelisting, definitions:

1. DSPAM: anybody who sends ${whitelistThreshold} mails is whitelisted

2. ASSP: anybody who is authenticated over SASL and their correspondents from that mail is whitelisted for up to 90 days


Frankly, implementation of definition 1 is not very good really. Implementation according to definition 2 is right on target.


From tokenizer.c:

#ifdef VERBOSE
   LOGDEBUG ("Reading '%s' header from: '%s'", heading, line);
#endif

   if (CTX->flags & DSF_WHITELIST) {
     /* Use the entire From: line for auto-whitelisting */

     if (!strcmp(heading, "From")) {
       char wl[256];
       char *fromline = line + 5;
       unsigned long long whitelist_token;

       if (fromline[0] == 32)
         fromline++;
       snprintf(wl, sizeof(wl), "%s*%s", heading, fromline);
       whitelist_token = _ds_getcrc64(wl);
       ds_diction_touch(diction, whitelist_token, wl, 0);
       diction->whitelist_token = whitelist_token;
     }
   }

This could be hackable to get token whitelisted on demand actually, but I'm afraid of screwing something up in another place.


There is a fantastic amount of info about dspam and how it works on the dspam site and googleing for related stuff (such as crm114) will turn up reams more.

I need to add address whitelist/blacklist management feature to this very nice PHP web ui by Michael Thompson:

Better get a good MTA and auxiliaries and let them do this for you.

The choice has been done for me already: Exim, and it's not going to change, but there's nothing MTA can do if antispam filter decides it's spam, can it?

I don't think this actually falls into realm of MTA. You don't say to people "if you want whitelist smth in SpamAssassin, make MTA do whitelisting instead of SA", do you?


--
Dział Techniczny
Marcin Król

Domeny, Hosting, Kolokacja, Certyfikaty SSL, Monitoring serwerów ...
------------------------------------------------------------------
DOMENY.PL sp. z o.o. ul. Wielicka 50, 30-552 Kraków, Poland
tel. +48(12)296 3663, info: +48 501 DOMENY
fax. +48(12)296 3664, +48(22)3 987 365
e-mail: [EMAIL PROTECTED], www: http://www.Domeny.pl
------------------------------------------------------------------
Komunikator online/ Live Chat:
http://live2.domeny.pl/request_email.php?l=phplive&x=1&deptid=2


Reply via email to