RE: [Exim] Removing headers in ACLs

Página Principal
Apagar esta mensagem
Responder a esta mensagem
Autor: Eli
Data:  
Para: exim-users
Assunto: RE: [Exim] Removing headers in ACLs
>Since there's add/remove, why not keep a single list to remember both.
>Something like:
>
>struct { char *name; char *data} *acl_headers;
>where data is not null (add) or NULL (remove)
>
>When it's applied, itterate through the list performing the action
>requested.


That's kind of what I was thinking of too (not specifically the struct
statement, but the idea). If all headers were stored in a structure,
adding, removing, and rewriting could be done quite easily since you could
simply search the structure for the header in question and do your dirty
work on it. I'm sure there might be some list type optimisations to be done
or something since there could be potentially quite a few headers sent and
iterating through a huge list via string functions may not be the best thing
since sliced cheese :) Maybe a hash table - I dunno :)

Eli.

-----Original Message-----
From: exim-users-admin@??? [mailto:exim-users-admin@exim.org] On Behalf
Of Wakko Warner
Sent: Tuesday, January 13, 2004 8:06 PM
To: exim-users@???
Subject: Re: [Exim] Removing headers in ACLs

> Header lines that are "added" in ACLS are not in fact added; they are
> remembered and added later. This is necessary for all ACLs before DATA,
> because there is nothing to add them to at that point.
>
> As far as I can recall, nobody has asked for the ability to remove
> header lines at ACL time. I suppose it could operate by remembering
> them, but there could be nasty complications when different ACLs are
> adding and removing.
>
> 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.


Since there's add/remove, why not keep a single list to remember both.
Something like:

struct { char *name; char *data} *acl_headers;
where data is not null (add) or NULL (remove)

When it's applied, itterate through the list performing the action
requested.

Just a thought, I personally don't use add/remove at all.

--
Lab tests show that use of micro$oft causes cancer in lab animals

--

## 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]