Sieve body extension

New in Messaging Server 7.0u2, the MTA supports the Sieve body extension specified in RFC 5173 (Sieve Body Extension), with the following restrictions:



 The only match types supported are   and     ; while   and         are not supported. This is likely to be a permanent restriction due to   the possible performance impact of supporting these match-types. 

 The only body transforms supported are   and     ; while   is not supported. This   restriction is likely to be lifted in a future release. 

 Variable substitutions are not allowed in body test arguments. If they are used an error is likely to occur. This is so that a list of all arguments to body in all scripts can be computed in advance and searched for in a single pass. If this restriction were to be lifted, it would be easy to construct scripts that would require an arbitrary number of passes over the  message, which is unacceptable in a server environment. As such, this should be considered to be a permanent restriction. For example, this script will fail: 

 require &#x5b;"variables", "body"&#x5d;; set "a" "testing"; if body :contains "${a}" { discard; } 

 The  body transform operates on all message parts with a text type or a 7bit/8bit encoding. If a charset other than utf-8 is specified on a text part, then that part is converted to utf-8  before being searched. 



Note also that new in Messaging Server 7.0.5,    supports use of the Sieve body extension.

The availability of the body test is controlled by the    MTA option. A value of 0, the default, disables the extension. A value of 1 enables the extension for use in all Sieves. A value of 2 enables the use of body in system-level Sieves only. Each Sieve script that wishes to use " " must also declare it using the " " capability: require "body";

See also:
 * Brief overview of Sieve language elements
 * Brief overview of Sieve language elements
 * enable_sieve_body MTA Option
 * Sieve regex extension
 * Sieve variables extension
 * imexpire invoking spamfilter packages
 * Sieve filters
 * Sieve supported extensions