[EXIM] Perl enabled exim

Página superior
Eliminar este mensaje
Responder a este mensaje
Autor: Nigel Metheringham
Fecha:  
A: exim-users
Cc: Dom Mitchell
Asunto: [EXIM] Perl enabled exim
Having spent a happy few hours swearing at Cyberpromo UK, I have been
thinking about exim filters and the like.....

When it comes down to it, I basically want the ability to do arbitrary
tests on an email and have arbitrary things happen on the results. ie I
want a full programming language with interfaces back into exim. Writing
yet another programming language seems a little silly when a number of
embeddable languages already exist (tcl & perl for example).

inn can do this by using perl filters run in-line.

Would embedding perl into exim (probably not as a standard option but a
"power-user" option selected at compile time) be a possibility?

exim's process model mitigates against this a little - forking is OK
(system filter for example could be loaded early, and would survive a fork
without requiring a re-compile), but each user delivery is likely to need
the perl code recompiling. However just being able to run the system
filter in this way would be a huge win. Being able to do flash state
management stuff in-line (counting the number of messages of type X in
your spam calculations) would be hugely useful.

In theory embedding a perl is quite easy. In practice life will be more
complicated. perl will need access to exim state - basically the
expansion variables and the message. It will need to be able to modify
some things - my initial thinking is that it needs to be able to do the
same as the system filter PLUS the ability to direct messages to a
specific transport (once you can do that you can for example direct all
spam to a BSMTP mailbox which allows you to recover your mistakes).

The real problem is that you are adding a powerful programming language to
a setuid program!

Would this be a useful thing to do?
Is anyone else interested in working on this?
Is Philip horrified??

    Nigel.
-- 
[ Nigel.Metheringham@???   -  Systems Software Engineer ]
[ Tel : +44 113 251 6012                   Fax : +44 113 234 6065 ]
[      Real life is but a pale imitation of a Dilbert strip       ]




--
*** Exim information can be found at http://www.exim.org/ ***