[milters] Archive

Lists Index Date Thread Search

Article: 1429
From: Michael Elliott
Date: 2007-02-06 18:49:32 -0500
Subject: Re: Per user settings

Removal...........: milters-request@milter.info?subject=remove
More information..: http://www.milter.info/#Support

On Tue, Feb 06, 2007 at 05:11:07PM +0100 or thereabouts, Anthony Howe wrote:
> Mike Horwath wrote:
> > Anyone started hacking either milter-link or milter-date to support
> > per user lookups and decisions based on said lookups?
> Per-user configurations do NOT work will when you have multiple 
> recipients in the message. You might have one user that says OK and 
> another that says REJECT - which one has priority?

In envelope phase, they do work.  That is easy.
In body phase, set a config option for the sysadmin to make that
choice.  The simplist option is to take the least restrictive result
of users' choices.

Here are some real world numbers.

543579  nrcpts=0
 14801  nrcpts=1
  3004  nrcpts=2
    57  nrcpts=3
    35  nrcpts=4
    25  nrcpts=5
     9  nrcpts=6
     1  nrcpts=7
     4  nrcpts=8
    10  nrcpts=9
     1  nrcpts=10
     1  nrcpts=11
     1  nrcpts=13
     2  nrcpts=23
     1  nrcpts=50
     1  nrcpts=73
     1  nrcpts=82

Ok.  So, 83% of the time, you have just one recipient.  When you have 
two recipients, how often are they going to have differing options? 
If we guess 50%, that means the code we are worring about will only 
need to make decisions 9% of the time.  In reality, 95% of users are
going to be in the default case, and so only 1% of the time are we 
going to have to make a decision.

So, the decision is reject, tag, or nothing.  Well, simply set a 
config switch for the sysadmin to choose between tag or nothing as 
the final answer.  A sysadmin cannot be blamed for an extra 1% of spam 
getting through a filter, so reject is out.  When a customer whines,
you can point to multiple recipients and say the softest policy won.
The customers will scream bloody murder if 1% of mail they expected
was whitelisted is being rejected.

The choice is now down to if more users prefer their subject line to 
be untouched or useful.  That is the sysadmin's choice.  

The question comes down to: In order to keep 5% of your customer base
happy and paying you money, will you accept the possible 1% more spam
coming in?  Answer: Money wins.

> You have to have split recipients into individual messages before you 
> can apply per-user configurations and a standard sendmail/milter setup 

Don't bother.  Spam filtering never will be able to achieve perfection.
A one percent fail safe is a small cost for more individualized control.

> > If no one has started, then I'll probably start the hackery required
> > to get them to use a MySQL database and query/reset things based on
> > per user settings.

No need.  Anthony has code in his hands for per user settings read from 
the access.db file.   I gave it to him a little while ago.  But, he has
been busy with other things going into libsnert 1.63.

> I suggest you read my license first. My code is not GPL nor Open Source 
> as defined by http://www.opensource.org/docs/definition.php Any changes 
> you create would be private for you own use. You could submit them to 
> me, but no guarantees I'll use the code, though I might reimplement it 
> if the idea is interesting.

Yep.  His choice as to if somthing gets added.

-Mike Elliott

> -- 
> Anthony C Howe          Skype: SirWumpus                    SnertSoft
> +33 6 11 89 73 78         AIM: SirWumpus    Sendmail Milter Solutions
> http://www.snert.com/     ICQ:
7116561      http://www.snertsoft.com/

Lists Index Date Thread Search