Revisiting SAgate and rewriting large parts of it.
I can never seem to get MIMEDefang filters exactly right, less so with ones that I’ve never put into production.
I’ve written the SAgate config file in XML, parseable with XML::Simple. SAgate will operate in MX-only mode, meaning that we won’t tell our users that they should use it as the SMTP host (or POP or IMAP host with it doing proxy, either). This means we can simplify a lot of the logic to figure out whether we should apply filters (particularly SpamAssassin) to any particular message (it had been based on a munging of recipient).
I’ve introduced the idea of multiple domains for SAgate to operate under, and built a robust routine to identify which domain is active for a particular message/recipient. I’m also building in logic to have the whole filter for a domain turned on or off (or logging-only) with exceptions for particular addresses.
All of this should end up making it more robust, slightly more flexible, and actually more simple.
Posted by Rowan Littell at March 7, 2005 05:14 PM