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]