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