On 02:58 25 Jan 2002, Roman Neuhauser <[EMAIL PROTECTED]> wrote: | I'd like to colllect feedback on an idea that's been on my mind for some | time now: | | looks like there's just two MDA's in use: Procmail, and Maildrop. Both | have their fine (and not so fine) points, which I'll summarize briefly | (YMMV): | | Procmail: | + lots of prepackaged antispam filters | - config files resemble uuencoded assembler
But there are preprocessors which take better input (at least for the common filtering desires) and emit pure procmail. | - quite resource-hungry (keeps the whole message in memory while | processing it) | - reportedly isn't completely safe (can lose your mail) Shouldn't lose mail if it's using the right locking. | Maildrop: | - not as popular as Procmail (fewer filter packages) | + square head is not a prerequisite to understand the configuration | - quite optimized (larger messages stored in temp files during | processing) | + should be safer than Procmail Dunno about that last - why? | In fact, I found only a *single* spam filter for Maildrop. | | Now, what bugs me about both of these programs: to the best of my | knowledge, neither offers you a real programming language. Well, they do both offer a programming language. Oh, you mean "not with the bells and whistles I want". True, neither will do loops AFAIK... | This can be a | plus, or a minus (YMMV), but imagine being able to write filters using a | full-featured scripting language! This idea really attracts me, and I | started prototyping such an MDA in PHP. Using a scripting language has | of course a few inherent drawbacks, but I don't think the speed decrease | would be so horrible to mean anything on a single user box (as opposed | to a corporate POP 3 server, for example). I did this once. Used perl, had this whole wrapper library. Undocuments and ugly as sin, but it worked and you could doo all the loop stuff etc. However, now I use procmail with a preprocessor. It does actually do damn near everything I want. (This is a Clue.) | However, I know that I would | benefit from the enhanced capabilities. | | I'm slowly getting the picture of the classes that would make this | happen, and would like to ask you: is there something that you sorely | lack in your favorite MDA? What is it? Only the ability to match purely on the address component between the <>; procmail's approach uses a regexp on the whole line, and this means occasionally an ill thought out pattern (or more commonly an unfortunate address) may match the wrong rule (this is a rule phrasing problem). Well, the program I _used_ to use is here: http://www.zip.com.au/~cs/scripts/filemail and all the cs::* classes it lived off are in here: http://www.zip.com.au/~cs/scripts/cs/ Ugly, as I remarked. The only neat thing is the address parser, which hands you a perl hashref with the address text as key values and the "pure" address as the key, which is handy for making decisions and editing and rewriting - you have the pure keys for decision making and the full address (comments and all) for transcription. -- Cameron Simpson, DoD#743 [EMAIL PROTECTED] http://www.zip.com.au/~cs/ > Can I sue? This is America -- it is not only your right, but your duty to sue! - Ed Green, DoD#0111, [EMAIL PROTECTED]