Previous: Actions, Up: Sieve Language
This section summarizes the gnu extensions to the sieve language
GNU libsieve understands the following multiline string syntax:
text:[-][delimiter]
....
delimiter
The meaning of optional flags is the same as in shell “here document” construct: the dash strips all leading tab characters from the string body, thus allowing it to be indented in a natural fashion; delimiter introduces the new end-of-text delimiter instead of the default dot. If delimiter starts with a backslash, no preprocessing will be performed within a string.
require statement.
require appears
after a command other than require. The gnu sieve library allows
interspersing the require and other statements. The only
requirement is that require must occur before a statement that is
using the required capability (see Require Statement).
header test
The header takes an optional argument :mime, meaning to
scan the headers from each part of a multipart message.
size test
The size test allows to omit the optional argument
(:over|:under). In this case exact equality is assumed.
envelope test
The only value that can be meaningfully used as the first required
argument of an envelope test is ‘from’. This limitation
may disappear from the subsequent releases.
Along with the usual :is, :matches and contains
matching type, gnu sieve library understands :regex type. This
matching type toggles POSIX Extended Regular Expression matching.