2 ## Settings for the Sieve interpreter
5 # Do not forget to enable the Sieve plugin in 15-lda.conf and 20-lmtp.conf
6 # by adding it to the respective mail_plugins= settings.
8 # The Sieve interpreter can retrieve Sieve scripts from several types of
9 # locations. The default `file' location type is a local filesystem path
10 # pointing to a Sieve script file or a directory containing multiple Sieve
11 # script files. More complex setups can use other location types such as
12 # `ldap' or `dict' to fetch Sieve scripts from remote databases.
14 # All settings that specify the location of one ore more Sieve scripts accept
15 # the following syntax:
17 # location = [<type>:]path[;<option>[=<value>][;...]]
19 # If the type prefix is omitted, the script location type is 'file' and the
20 # location is interpreted as a local filesystem path pointing to a Sieve script
21 # file or directory. Refer to Pigeonhole wiki or INSTALL file for more
25 # The location of the user's main Sieve script or script storage. The LDA
26 # Sieve plugin uses this to find the active script for Sieve filtering at
27 # delivery. The "include" extension uses this location for retrieving
28 # :personal" scripts. This is also where the ManageSieve service will store
29 # the user's scripts, if supported.
31 # Currently only the 'file:' location type supports ManageSieve operation.
32 # Other location types like 'dict:' and 'ldap:' can currently only
33 # be used as a read-only script source ().
35 # For the 'file:' type: use the ';active=' parameter to specify where the
36 # active script symlink is located.
37 # For other types: use the ';name=' parameter to specify the name of the
38 # default/active script.
39 sieve = file:~/sieve;active=~/.dovecot.sieve
41 # The default Sieve script when the user has none. This is the location of a
42 # global sieve script file, which gets executed ONLY if user's personal Sieve
43 # script doesn't exist. Be sure to pre-compile this script manually using the
44 # sievec command line tool if the binary is not stored in a global location.
45 # --> See sieve_before for executing scripts before the user's personal
47 #sieve_default = /var/lib/dovecot/sieve/default.sieve
49 # The name by which the default Sieve script (as configured by the
50 # sieve_default setting) is visible to the user through ManageSieve.
53 # Location for ":global" include scripts as used by the "include" extension.
56 # Location Sieve of scripts that need to be executed before the user's
57 # personal script. If a 'file' location path points to a directory, all the
58 # Sieve scripts contained therein (with the proper `.sieve' extension) are
59 # executed. The order of execution within that directory is determined by the
60 # file names, using a normal 8bit per-character comparison.
62 # Multiple script locations can be specified by appending an increasing number
63 # to the setting name. The Sieve scripts found from these locations are added
64 # to the script execution sequence in the specified order. Reading the
65 # numbered sieve_before settings stops at the first missing setting, so no
66 # numbers may be skipped.
67 #sieve_before = /var/lib/dovecot/sieve.d/
68 #sieve_before2 = ldap:/etc/sieve-ldap.conf;name=ldap-domain
69 #sieve_before3 = (etc...)
71 # Identical to sieve_before, only the specified scripts are executed after the
72 # user's script (only when keep is still in effect!). Multiple script
73 # locations can be specified by appending an increasing number.
76 #sieve_after2 = (etc...)
78 # Which Sieve language extensions are available to users. By default, all
79 # supported extensions are available, except for deprecated extensions or
80 # those that are still under development. Some system administrators may want
81 # to disable certain Sieve extensions or enable those that are not available
82 # by default. This setting can use '+' and '-' to specify differences relative
83 # to the default. For example `sieve_extensions = +imapflags' will enable the
84 # deprecated imapflags extension in addition to all extensions were already
86 #sieve_extensions = +notify +imapflags
88 # Which Sieve language extensions are ONLY available in global scripts. This
89 # can be used to restrict the use of certain Sieve extensions to administrator
90 # control, for instance when these extensions can cause security concerns.
91 # This setting has higher precedence than the `sieve_extensions' setting
92 # (above), meaning that the extensions enabled with this setting are never
93 # available to the user's personal script no matter what is specified for the
94 # `sieve_extensions' setting. The syntax of this setting is similar to the
95 # `sieve_extensions' setting, with the difference that extensions are
96 # enabled or disabled for exclusive use in global scripts. Currently, no
97 # extensions are marked as such by default.
98 #sieve_global_extensions =
100 # The Pigeonhole Sieve interpreter can have plugins of its own. Using this
101 # setting, the used plugins can be specified. Check the Dovecot wiki
102 # (wiki2.dovecot.org) or the pigeonhole website
103 # (http://pigeonhole.dovecot.org) for available plugins.
104 # The sieve_extprograms plugin is included in this release.
107 # The separator that is expected between the :user and :detail
108 # address parts introduced by the subaddress extension. This may
109 # also be a sequence of characters (e.g. '--'). The current
110 # implementation looks for the separator from the left of the
111 # localpart and uses the first one encountered. The :user part is
112 # left of the separator and the :detail part is right. This setting
113 # is also used by Dovecot's LMTP service.
114 #recipient_delimiter = +
116 # The maximum size of a Sieve script. The compiler will refuse to compile any
117 # script larger than this limit. If set to 0, no limit on the script size is
119 #sieve_max_script_size = 1M
121 # The maximum number of actions that can be performed during a single script
122 # execution. If set to 0, no limit on the total number of actions is enforced.
123 #sieve_max_actions = 32
125 # The maximum number of redirect actions that can be performed during a single
126 # script execution. If set to 0, no redirect actions are allowed.
127 #sieve_max_redirects = 4
129 # The maximum number of personal Sieve scripts a single user can have. If set
130 # to 0, no limit on the number of scripts is enforced.
131 # (Currently only relevant for ManageSieve)
132 #sieve_quota_max_scripts = 0
134 # The maximum amount of disk storage a single user's scripts may occupy. If
135 # set to 0, no limit on the used amount of disk storage is enforced.
136 # (Currently only relevant for ManageSieve)
137 #sieve_quota_max_storage = 0