[elspy] usual questions about suitability

A.M. Kuchling amk at amk.ca
Thu Aug 19 17:56:44 CEST 2004

On Wed, Aug 18, 2004 at 08:55:19AM -0400, Eric S. Johansson wrote:
> the ability to rewrite recipients both in terms of number of and modify 
> their e-mail addresses[1].  

You can mutate the recipient list in a handler.  I'm not sure what
Exim would do if you reduced the recipient list to length 0.

> This also includes the ability to declare a 
> message as having vanished from the MTA's awareness (in other words, 
> it's been consumed by the anti-spam filter).

You can raise RejectMessage to return an SMTP error.  Returning an
SMTP OK while silently discarding a message strikes me as a very bad
idea; legitimate mail could be lost.

> the ability to limit the number of filter instances running at any one 
> time. 

No; elspy is embedded in Exim so multiple instances are always running
(unless you only have one Exim process).  This means that the answer
to your follow-up question about running as a separate group is "no";
I don't think you can change the group and continue processing the

I would suggest the approach that elspy.spamassassin uses, opening a
local socket to a daemon that does the analysis.  That way the daemon
can run under any group ID, and it can do its own serialization.
(Bonus: the MTA-specific glue is then fairly small, so it might be
possible to have glue for Exim, sendmail, and other MTAs.)

> the ability to distinguish which interface the traffic comes from or the 
> ability to bind filter to interface.

The info dictionary passed to elspy handlers includes the IP address
on which a message was received, but not the interface name
(e.g. 'eth0').  I don't know if Exim has that information somewhere in
its internals.


More information about the elspy-users mailing list