On 6/15/2005 3:20 PM, Justin Mason wrote:

> Eric -- you may have to patch the AutoWhitelist class to throw those
> numbers into variables hanging off the PerMsgStatus object.  Then the
> plugin can access those values safely.
> 
> I'd be +1 on applying a patch that simply sets a variable or two on the
> PerMsgStatus object as the AWL logic is run, that wouldn't have any
> noticeable effect during normal use (and it seems handy in general).

I don't disagree that it would be handy in general, but I'm not sure it's
useful strategy for this plugin given some of the synchronization issues
at play here. In particular, AWL runs after all of the eval rules, and
that is too late in the cycle for my rule to update the message.

This is kind of tricky. On the one hand, the plugin needs to run after all
of the other eval tests so that it can get the current spam score. But if
it is going to assign a booster score to the message (+1.0 for being
first-time spam from unknown source, and getting the outcome recorded in
the appropriate header field), then it also needs to run before the end of
the message processing so that SA is still in a position to modify the
score (and the underlying message) appropriately. This means it has to be
pretty much the last rule to run, which is proving to be pretty
challenging in its own right.

On top of that it also has to pull data from the AWL database, but without
allowing AWL to actually run against the message (it would be too late for
my eval rule to update the message at that point). Therefore, the easiest
way for me to find out if the message has been seen by AWL is to just ask
AWL directly, using the exposed method (but that doesn't seem to be
working, for reasons unknown).

So I agree with you as to general utility, but it won't really help with
this plugin. I need to get the AWL method figured out, and I need to get
the timing factors figured out (eg, how do I make the rule be last). I'm
stuck on both of those, although I'll readily admit that I'm not really
trying very hard either, since I've got other stuff to work on.

-- 
Eric A. Hall                                        http://www.ehsco.com/
Internet Core Protocols          http://www.oreilly.com/catalog/coreprot/

Reply via email to