On Tue, 8 Oct 2002, Mike Meredith wrote:
> Well, it's in the wrong order in my ACL, and I'm still getting the
> relevant message during testing. Maybe this is something that
> accidentally works now, and will stop working in a future version of
> Exim ?
Well, Exim stops obeying the ACL statement as soon as it hits an
appropriate condition, so if the "message" modifier follows, it won't
see it.
AHA! <FX: lightbulb illuminates>
I think I understand what is going on. I have not explained it clearly
enough. Indeed, I didn't have it really clear in my own head until I
considered what you said. I all depends on whether you have an "accept"
or a "deny" statement. Consider:
accept domains = +local_domains
endpass
verify = recipient
message = unverified recipient
For an unknown recipient, the "verify" condition will fail. At that
point, Exim knows that the verb should not be obeyed, so it proceeds no
further. Therefore, the message is not seen. However, consider something
like this:
deny sender = x@y
message = I don't like x@y
This time, when the sender is x@y, the condition is true, so Exim will
continue, in order to see if there are any further conditions to be
tested. It will see the "message" modifier before it finds out that
there aren't any more conditions. So in that case, the message will be
used. Is that your situation?
I will see if I can say all that neatly in the documentation...
--
Philip Hazel University of Cambridge Computing Service,
ph10@??? Cambridge, England. Phone: +44 1223 334714.