On Thu, Dec 27, 2018 at 08:58:46AM -0600, Bryan K. Walton wrote:
> However, I am slightly confused about the documentation saying that
> if..endif is allowed to nest. Does this mean that I could write
> something like the following:
>
> if /pattern/flags
> if !/pattern/flags
> endif
> endif
The checks are applied to *ONE LOGICAL HEADER AT A TIME*.
So while the patterns can nest, they are matching the
content of a *single* logical header line, not the entire
message header.
For each header line "x":
For each rule "r":
if ("x" ~ "r"):
perform rule action
When "r" is a sequence of nested "if" statments "r1" .. "rN", the
meanining of "x" ~ "r" is:
if "x" ~ "r1"
and "x" ~ "r2"
...
and "x" ~ "rN"
perform rule action
but, note that all the rules see the same input "x", which is still
just a single logical header line.
--
Viktor.