Thomas Jacob wrote:
> The following ACL clause causes an error
>
> accept condition = ${if and { {!def:h_STUFF} \
> {eq {$h_From:} {hq@???}} } {true}{false} }
>
>
> "temporarily rejected after DATA: failed to expand ACL string "${if and
> {{!def:h_STUFF} {eq {$h_From:} {hq@???}}} {true}{false}}":
> missing } at end of condition inside "and" group"
>
> but using two (equivalent?) condition clauses works
>
> accept condition = ${if !def:h_STUFF {true}{false}}
> condition = ${if eq {$h_From:} {hq@???} {true}{false}}
Put a colon at the end of h_STUFF. Without the colon, exim tries to work
out what you meant, but in the case where there's no whitespace, it
can't, because the } is a valid character in a header name.
- Marc