Sieve loop extension

New in 7.0.5, the MTA supports a private "loop" construct in system-level Sieves, specifically in spamfilter,  in alias file &#x5b;FILTER&#x5d;, or   alias option defining a non-personal alias (e.g. a mailing list alias),  destination channel, the   mapping table or a Recipient   mapping table,  source channel,  and system    Sieves. (No " " clause is needed.) The syntax is: loop { ...       exitif (expression); ...       nextif (expression); ...      } A loop may contain zero or more " " and/or "  statements. The loop terminates if the argument to   evaluates to  . New in 8.0.2.3,   can be used to cause the loop to restart if the associated condition evaluates to.

Loops may be nested: loop { ...       loop { ...             exitif (expression1); # Exit from inner loop #1 }       ...        exitif (expression2); # Exit from outer loop ...       loop { ...             exitif (expression3); # Exit from inner loop #2 }       } Loops should be used with extreme care because of the possibility of putting the MTA into a CPU loop. It tends to be wise to use more limited capabilities, for instance, the " " extension, when such a more limited capability suffices.

See also:
 * Alias file named parameters
 * alias_filter Option
 * sourcefilter Option
 * destinationfilter Option
 * FROM_ACCESS mapping table
 * Recipient access mapping tables
 * Sieve mime extension
 * Sieve supported extensions
 * Sieve filters