26
26
active script in the 'sieve_dir' directory. Avoid placing the active Sieve
27
27
script inside the 'sieve_dir' directory.
30
A path to a global sieve script file, which gets executed ONLY if user's
31
private Sieve script doesn't exist, e.g.'/var/lib/dovecot/default.sieve'.
32
Check the <multiscript section> [Pigeonhole.Sieve.Configuration.txt] for
33
instructions on running global Sieve scripts before and after the user's
34
personal script. Be sure to pre-compile the specified script manually using
35
the 'sievec' command line tool, as explained <here>
29
sieve_default = (v0.3+) :
30
The location of the default personal sieve script file which gets executed
31
ONLY if user's private Sieve script does no exist,
32
e.g.'/var/lib/dovecot/default.sieve'. Check the <multiscript section>
33
[Pigeonhole.Sieve.Configuration.txt] for instructions on running global Sieve
34
scripts before and after the user's personal script. This is usually a global
35
script, so be sure to pre-compile the specified script manually in that case
36
using the 'sievec' command line tool, as explained <here>
36
37
[Pigeonhole.Sieve.Usage.txt].
40
The deprecated name for the 'sieve_default' setting (Pigeonhole v0.2 and
38
43
sieve_global_dir = :
39
44
Directory for :global include scripts for the include extension
40
45
[http://tools.ietf.org/html/draft-ietf-sieve-include-05]. The Sieve
68
73
sieve_extensions = :
69
74
Which Sieve language extensions are available to users. By default, all
70
75
supported extensions are available, except for deprecated extensions,
71
extensions that require explicit configuration or those that are still under
72
development. Some system administrators may want to disable certain Sieve
73
extensions or enable those that are not available by default. All supported
74
extensions are listed <here> [Pigeonhole.Sieve.txt]. Normally, all enabled
75
extensions must be listed for this setting, but starting with Sieve version
76
0.1.7, this setting can use '+' and '-' to specify differences relative to
77
the default. For example 'sieve_extensions = +imapflags' will enable the
78
deprecated imapflags extension
79
[http://tools.ietf.org/html/draft-melnikov-sieve-imapflags-03] in addition to
80
all extensions enabled by default.
76
extensions that add the ability to change messages, extensions that require
77
explicit configuration or extensions that are still under development. Some
78
system administrators may want to disable certain Sieve extensions or enable
79
those that are not available by default. All supported extensions are listed
80
<here> [Pigeonhole.Sieve.txt]. Normally, all enabled extensions must be
81
listed for this setting, but starting with Sieve version 0.1.7, this setting
82
can use '+' and '-' to specify differences relative to the default. For
83
example 'sieve_extensions = +imapflags' will enable the deprecated imapflags
84
extension [http://tools.ietf.org/html/draft-melnikov-sieve-imapflags-03] in
85
addition to all extensions enabled by default.
87
sieve_global_extensions = (v0.3+) :
88
Which Sieve language extensions are ONLY avalable in global scripts. This can
89
be used to restrict the use of certain Sieve extensions to administrator
90
control, for instance when these extensions can cause security concerns. This
91
setting has higher precedence than the 'sieve_extensions' setting (above),
92
meaning that the extensions enabled with this setting are never available to
93
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 enabled
96
or disabled for exclusive use in global scripts. Currently, no extensions are
97
marked as such by default.
83
100
The Pigeonhole Sieve interpreter can have plugins of its own. Using this
84
101
setting, the used plugins can be specified. Check the <Sieve plugins page>
85
102
[Pigeonhole.Sieve.Plugins.txt] for available plugins.
105
The path to the file where the user log file is written. If not configured, a
106
default location is used. If the main user's personal Sieve (as configured
107
with 'sieve=') is a file, the logfile is set to '<filename>.log' by default.
108
If it is not a file, the default user log file is '~/.dovecot.sieve.log'.
87
110
recipient_delimiter = +:
88
111
The separator that is expected between the :user and :detail address parts
89
112
introduced by the subaddress extension [http://tools.ietf.org/html/rfc5233/].
117
140
---%<-------------------------------------------------------------------------
145
sieve_max_script_size = 1M :
146
The maximum size of a Sieve script. The compiler will refuse to compile any
147
script larger than this limit. If set to 0, no limit on the script size is
150
sieve_max_actions = 32 :
151
The maximum number of actions that can be performed during a single script
152
execution. If set to 0, no limit on the total number of actions is enforced.
154
sieve_max_redirects = 4 :
155
The maximum number of redirect actions that can be performed during a single
156
script execution. The meaning of 0 differs based on your version. For
157
versions v0.3.0 and beyond this means that redirect is prohibited. For older
158
versions, however, this means that the number of redirects is /unlimited/, so
164
/(Pigeonhole v0.3.1+ only)/
166
The location of Sieve scripts is not limited to the file system. The Sieve
167
interpreter can be extended to retrieve Sieve scripts from other sources as
168
well, such as a database. Currently, all settings that are used to obtain
169
thelocation of a single Sieve script, such as 'sieve=', 'sieve_default=',
170
'sieve_dir=' and 'sieve_global_dir=' accept the following extended syntax:
172
---%<-------------------------------------------------------------------------
173
location = [<type>:]path[;<option>[=<value>][;...]]
174
---%<-------------------------------------------------------------------------
176
The following script location types are implemented by default:
179
The location path is a file system path pointing to the script file or a
180
directory containing script files with names structured as
181
'<script-name>.sieve'.
184
Dovecot dict lookup. The location path is a dict uri. Read
185
doc/script-location-dict.txt in the Pigeonhole source package for more
186
information and examples (/FIXME: make a wiki page for this/).
188
If the type prefix is omitted, the script location type is 'file'.
190
The following options are defined for all location types:
193
Set the name of the Sieve script that this location points to. If the name of
194
the Sieve script is not contained in the location path, this option is
195
required (e.g. for dict locations that must point to a particular script). If
196
the name of the script is contained in the location, the value of the name
197
option overrides the name retrieved from the location. If the Sieve
198
interpreter explicitly queries for a specific name (e.g. to include a script
199
from the 'sieve_dir=' location), this option has no effect.
202
Points to the directory where the compiled binaries for this script location
203
are stored. If this option is omitted, the behavior depends on the location
204
type. For 'file' type locations, the binary is then stored in the same
205
directory as where the script file was found if possible. For 'dict' type
206
locations, the binary is not stored at all in that case. Don't specify the
207
same directory for different script locations, as this will result in
119
210
Extension-specific Configuration
120
211
--------------------------------
269
360
enabled using the 'sieve_extensions' setting (as explained <above>
270
361
[Pigeonhole.Sieve.Configuration.txt]). This is disabled by default.
271
362
* The include extension [http://tools.ietf.org/html/draft-ietf-sieve-include]
272
now requires your script file names to end with ".sieve" :'include :personal
273
"myscript";' won't work unless you rename "myscript" to "myscript.sieve"
363
now requires your script /file/ names to end with ".sieve". This means that
364
'include :personal "myscript"' won't work unless your script file is called
365
"'myscript.sieve'" on disk. Also note that the "'.sieve'" extension has no
366
special meaning within the Sieve script; if you 'include "myscript.sieve"',
367
the Sieve interpreter will look for a script file called
368
'myscript.sieve.sieve' and not 'myscript.sieve'.
274
369
* Be sure to use *UTF8* for the mailbox argument of the *fileinto* command.
275
370
Older CMUSieve installations used modified UTF7 (as IMAP does) for the
276
371
mailbox parameter. If not adjusted, the Pigeonhole Sieve plugin will use the