[Mailman-Developers] anti-spam filter

Barry Warsaw barry at list.org
Fri Apr 19 03:00:25 CEST 2013


On Apr 19, 2013, at 02:40 AM, Patrick Ben Koetter wrote:

>My original point was that we should use MILTERs because we shouldn't reinvent
>what already has been implemented very well and we shouldn't come up with a
>proprietary solution, because that will make it harder to expand Mailman and
>also less versatile as a tool.

I don't know the milter API, but from a quick look at milter.org, it seems
like there's a C libmilter library. It looks like there are several options
for integrating this with Python, none of which I've actually looked at yet:

https://pypi.python.org/pypi?%3Aaction=search&term=milter&submit=search

From your description, it sounds like you might not even need this for our
purposes.  Just open a socket, shove the right bunch of bytes down it, then
read and parse the response.

In any case, I'm not opposed to the *idea* of supporting milters in MM3, but I
think that's a long way from "yes, let's do it".  A lot more analysis and
design is necessary, so it would be cool if someone is really interested in
pursing this.

>I think we miss out some important customers if we stop at "but you only need
>to add code to get what you want".
>
>Mail systems are created and run by postmasters in most cases. Even though
>there's a strong movement at the moment towards 'devops', the majority of
>sysops/postmasters can't program.
>
>If we stop at a programmable interface - which I understand is what you and
>Terri suggest - they will not be able to use Mailman in more complex setups,
>because integrating additional mail processing components would require them
>to program.

Well, it would require *someone* to program, but I hope not the sysadmin
unless they really want to.  One of the design goals of MM3 is to allow for
much easier extensibility.  For some sense of what I envision, look at the way
HyperKitty hooks into MM3.  You grab some code someone else has written, stick
it in some place on the file system, set a configuration variable or two, and
restart.  The nice thing is that this all then becomes re-usable with no
source hacking required, which makes things much better than in MM2.

-Barry


More information about the Mailman-Developers mailing list