Re: [exim] Stumped on router conditions

Top Page
Delete this message
Reply to this message
Author: Slavko
Date:  
To: exim-users
Subject: Re: [exim] Stumped on router conditions
Ahoj,

Dňa Tue, 29 Nov 2022 17:46:42 +0100 Sander Smeenk via Exim-users
<exim-users@???> napísal:

> So, "! true" must mean "false", right?


No, "! true" is just string, not Boolean negation.

From router's condition docs:

The string is expanded, and if the result is a forced failure, or an
empty string, or one of the strings “0” or “no” or “false” (checked
without regard to the case of the letters)...

As "! true" is not "empty string", nor "0", nor "no", nor "false" =>
result is true...

You have to flip results string for negate it in lookup, eg.:

    ${lookup ldap{...}{true}{false}}


and then

    ${lookup ldap{...}{false}{true}}


(define your makro only for lookup part)

Or make more detailed expansion, eg.:

    ${if eq{{YOUR_MACRO}{true} {true}{false}}


regards

--
Slavko
https://www.slavino.sk