Re: [Exim] Questions using transport filter

Top Page
Delete this message
Reply to this message
Author: Philip Hazel
Date:  
To: Alexander Sabourenkov
CC: exim-users
Subject: Re: [Exim] Questions using transport filter
On Tue, 9 Apr 2002, Alexander Sabourenkov wrote:

> > Don't do it that way. Do that with a router and a special transport.
> >
>
> Why not? Can you clarify?


(1) On general principles: that's not what the system filter is designed
to do. You *can* use it for routing, just like you can use rewriting for
routing, but that isn't the intention of its design.

(2) In practice, preserving the envelope is messy from a system filter,
and you can't use BSMTP, which is the "cleanest" way of preserving
envelopes.

(3) You have to remember to remove the X-Envelope-To: header that Exim
will add if it delivers direct from a system filter. Otherwise all the
envelope recipients are exposed to each other if you re-inject the
message.

> router + transport eat quite a lot more resources than system filter.
> What their advantages do you see?


Are you sure? The transport is going to run either way, so that doesn't
count. A router is written in C and should run quite fast. A filter is
written in an interpreted language which Exim has to analyse and then
interpret. I would be extremely surprised if it used less resources than
a router. (And if you set system_filter_user, Exim 4 runs it in a
separate process.)

I suppose, if the message has 1000 recipients you might notice, because
the router will run 1000 times and the filter only once. But then you
have 1000 addresses in your command line - which may give trouble.



--
Philip Hazel            University of Cambridge Computing Service,
ph10@???      Cambridge, England. Phone: +44 1223 334714.