>I think this problems can be avoided by maintaining lists of remove and
>add headers, and then doing the removes just before the adds. Like it is
>done for routers/transports, I think. I may be missing some important
>things, but basically this should work, or shouldn't it?
If a re-implementation of how headers are added and removed is going to be
done, I'd actually opt in for the ability to have them done inline, rather
than remove first, then add. It would not only remove the burden of
remembering all transactions and then processing them later (since you just
process as you walk the ACL statements and do them as you see them), but it
would make more sense when people are reading the config file. Also, it
would give better control, IE I could add a header unconditionally, then,
later on in the ACL (or in another ACL) I could have a condition which may
remove that header. If removes THEN adds were the way it was done (like
routers/transports), then I would never be able to do that, and you would
probably get a lot of people asking why.
I think the only reason that routers/transports always do a remove first,
then an add is because the order of statements in a router or transport
don't matter (only the order of the routers themselves), so it was decided
to remove first, then add. In an ACL, it is processed in order, so it would
only require more work to have it process all header removes first, then all
adds.
Eli.
-----Original Message-----
From: exim-users-admin@??? [
mailto:exim-users-admin@exim.org] On Behalf
Of Daniel Tiefnig
Sent: Wednesday, January 14, 2004 5:00 AM
To: exim-users@???
Subject: Re: [Exim] Removing headers in ACLs
Philip Hazel wrote:
> Header lines that are "added" in ACLS are not in fact added; they are
> remembered and added later.
Like it's done in routers/transports?
> As far as I can recall, nobody has asked for the ability to remove
> header lines at ACL time.
Hmm, well, Eli has allready asked for that a week ago or so.. :o)
> I suppose it could operate by remembering them, but there could be
> nasty complications when different ACLs are adding and removing.
I think this problems can be avoided by maintaining lists of remove and
add headers, and then doing the removes just before the adds. Like it is
done for routers/transports, I think. I may be missing some important
things, but basically this should work, or shouldn't it?
> I suspect a re-implementation is needed, which maintains a list of
> headers even before the message is received. This would probably
> behave more in the way that users expect.
Well, users should expect what's written in the manual...
lg,
daniel
--
## List details at
http://www.exim.org/mailman/listinfo/exim-users Exim
details at
http://www.exim.org/ ##
---
[This E-mail scanned for viruses]
---
[This E-mail scanned for viruses]