[Exim] Documentation clarification - $h_xxx

Pàgina inicial
Delete this message
Reply to this message
Autor: Brian Candler
Data:  
A: exim-users
Assumpte: [Exim] Documentation clarification - $h_xxx
Hi all,

I'm just seeking some clarification of the exim 4.10 documentation regarding
header addition during ACLs and address verification. (The reason is to do
with SpamAssassin integration, e.g. so I can arrange that the scanning of a
message is skipped if all the recipients don't have spam filtering enabled).
I think I need to use ACL warn headers to carry this information.

(1) Section 11.4 says about $h_xxx expansions:

"Only header lines that are common to all copies of a message are visible to
this mechanism. These are the original header lines that are received with
the message, and any that are added by a system filter. Header lines that
are added to a particular copy of a message by a router or transport are not
accessible."

It doesn't mention headers added by the 'warn' verb of ACLs - maybe it
should. I presume they _are_ visible via this mechanism, since section 37.6
says:

"Header lines that are added by an ACL at RCPT time are visible in string
expansions in the ACL that is run after DATA."

(and therefore presumably later too). But what about RCPT ACL invocations
for subsequent recipients of this same message? Can they see the headers
added by a previous RCPT?

(2) Section 37.6 says of the 'warn' verb:

"If the same header line is requested several times (provoked, for example,
by multiple RCPT commands), only one copy is actually added to the message."

Does that mean two different instances of the same header, or two exactly
identical headers? For example, if the first recipient adds warn message

X-Spam-Threshold: 5

and the second adds

X-Spam-Threshold: 10

will I get both headers ($h_x-spam-threshold = "5\n10"), or just the first
one?

Finally, I think this is fairly clear, but I just want to confirm: the
headers_add option of routers does _not_ have any effect when a router is
being used for address verification?

Thanks...

Brian Candler.