Re: [Exim] Feature Request - Multiple Conditions

Top Page
Delete this message
Reply to this message
Author: Richard.Hall
Date:  
To: David Woodhouse
CC: exim-users
Subject: Re: [Exim] Feature Request - Multiple Conditions
David,

On Tue, 4 May 2004, David Woodhouse wrote:

> On Tue, 2004-05-04 at 21:33 +0100, Tony Finch wrote:
> > Incorrect. After a sub-condition fails, subsequent parts of and{} are
> > parsed but not evaluated.
>
> Hmm. I could have sworn I did this...


You could well have done, if prior to 4.32 ...

>
>    # Drop the connection if the reverse DNS isn't in the HELO domain
>    drop  log_message = HELO MISMATCH Forged HELO for ($sender_helo_name)
>        message = You are not really $sender_helo_name. Go Away.
> -      condition = ${if and { \
> -          {!eq{$acl_m9}{}} \
> -           {!match{$sender_host_name}{${rxquote:$acl_m9}\N$\N}} \
> -          } \
> -          {yes}{no}}
> +      message = You are not really $sender_helo_name. Go Away.
> +      condition = ${if !eq{$acl_m9}{} {1}}
> +      condition = ${if !match{$sender_host_name}{${rxquote:$acl_m9}\N$\N} {1}}
>        delay = 5s

>
>
> ... to avoid the evaluation of $sender_host_name, upon empirical
> evidence (it was bitching about 2002::/16 IPv6 addresses not having
> reverse DNS, even though I could have told it not to bother trying).


From ChangeLog-4.32:-

5. A reference to $sender_host_name in the part of a conditional expansion
    that was being skipped was still causing a DNS lookup. This no longer
    occurs


> dwmw2


HTH,
Richard