[Raw Msg Headers][Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Perl transport agent...



> Hello.  I'm quite new to ZMailer (I think it'll be my MTA of choice,
> though I haven't seen Qmail yet), so forgive me if I write something
> stupid/obvious.

	This idea is -- shall I say -- quaint, and somewhat appealing...

> I think one addition to ZMailer would be great -- a in-Perl-written
> transport agent -- a script which would do exactly the things
> sm(1) and procmail(1) do (maximally simplified).  Such code
> would be very simple to extend, very flexible and much faster
> -- there would be much less forking and the perl script would
> be compiled just once, not on every message <- this is why it
> would be better than just running it from sm(1). :)

	Yes, however I would do it partly in C ("use ZMailer::talib;")
	so that all issues related to the transport-specification file
	handling (opening, locking, diagnostics..) could be done in there.
	The main loop in itself could be left to PERL, or maybe be a
	C function called after proper initializations, and it would call
	given per recipient and/or per file  procedure(s) with parameters
	of recipient list, originating envelope, supplied headers, body
	start offset, body file path, possible 'verboselog' FD.

> The flexibility would make it quite simple to make and customize
> scripts similar to INN's cleanfeed or inn_filter.pl.  Also
> it would be quite easy to make working model of transport
> agent before coding it in C.
> 
> I receive mail by UUCP.  With this I would make my mail relay
> convert mailing list messages to Usenet ones, pack them in
> UUCP bzip2-compressed batches, filter out spam and send
> deliver them to me by UUCP in much more efficient way.
> 
> Unfortunately I'm quite C analphabet (yet ;)) and I'm not sure
> whether You think it's worth doing.  Or maybe anyone has done
> it already?  Anyway I could try to do this thingy, but I
> need to know what to care about the most. :)

	Yes, it definitely is doable, but I don't have time for doing
	it now (even if I had interest, which I do -- a bit.)
	Anybody else ?   Person attempting this must be proficient with
	PERL's XSUB programming.  (I am only moderately good there.)

>    Regards,
>        Dawid Kuroczko
>     | d k @ssw.krakow.pl | Member of KNM |     The longer the walk

/Matti Aarnio <mea@nic.funet.fi>