SIEVEC(1) Pigeonhole SIEVEC(1)NAME
sievec - Pigeonhole's Sieve script compiler
SYNOPSIS
sievec [options] script-file [out-file]
DESCRIPTION
The sieve-dump command is part of the Pigeonhole Project (pigeon‐
hole(7)), which adds Sieve (RFC 5228) support to the Dovecot secure
IMAP and POP3 server (dovecot(1)).
Using the sievec command, Sieve scripts can be compiled into a binary
representation. The resulting binary can be used directly to process
e-mail messages during the delivery process. The delivery of mail mes‐
sages and - by means of the LDA Sieve plugin - also the execution of
Sieve scripts is performed by Dovecotqs local delivery agent (LDA)
called dovecot-lda(1). Usually, it is not necessaryto compile the
Sieve script manually using sievec, because dovecot-lda will do this
automatically if the binary is missing. However, in some cases dove‐
cot-lda does not have permission to write the compiled binary to disk,
forcing it to recompile the script every time it is executed. Using the
sievec tool, this can be performed manually by an authorized user to
increase performance.
The Pigeonhole Sieve implementation recognizes files with a .sieve
extension as Sieve scripts and corresponding files with a .svbin exten‐
sion as the associated compiled binary. This means for example that
Dovecot's LDA process will first look for a binary file "dovecot.svbin"
when it needs to execute "dovecot.sieve". It will compile a new binary
when it is missing.
The sievec command is also useful to verify Sieve scripts before using.
Additionally, with the -d option it can output a textual (and thus
human-readable) dump of the generated Sieve code to the specified file.
The output is then identical to what the sieve-dump(1) command produces
for a stored binary file. This output is mainly useful to find bugs in
the compiler that yield corrupt binaries.
OPTIONS-c config-file
Alternative Dovecot configuration file path.
-d Don't write the binary to out-file, but write a textual dump of
the binary instead. In this context, the out-file value '-' has
special meaning: it causes the the textual dump to be written to
stdout. The out-file argument may also be omitted, which has
the same effect as '-'. The output is identical to what the
sieve-dump(1) command produces for a compiled Sieve binary file.
Note that this option is not allowed when the out-file argument
is a directory.
-x extensions
Set the available extensions. The parameter is a space-separated
list of the active extensions. By prepending the extension iden‐
tifiers with + or -, extensions can be included or excluded rel‐
ative to the default set of extensions. If no extensions have a
+ or - prefix, only those extensions that are explicitly listed
will be enabled. Unknown extensions are ignored and a warning is
produced. By default, all supported extensions are available,
except for deprecated extensions or those that are still under
development.
For example -x "+imapflags -enotify" will enable the deprecated
imapflags extension along with all extensions that are available
by default, except for the enotify extension.
ARGUMENTS
script-file
Specifies the script to be compiled. If the script-file argument
is a directory, all files in that directory with a .sieve exten‐
sion are compiled into a corresponding .svbin binary file. The
compilation is not halted upon errors; it attempts to compile as
many scripts in the directory as possible. Note that the -d
option and the out-file argument are not allowed when the
script-file argument is a directory.
out-file
Specifies where the (binary) output is to be written. This argu‐
ment is optional. If omitted a binary compiled from <script‐
name>.sieve is saved as <scriptname>.svbin. If -b is specified,
the binary dump is output to stdout.
EXIT STATUS
sievec will exit with one of the following values:
0 Delivery was successful. (EX_OK, EXIT_SUCCES)
1 Operation failed. This is returned for almost all failures.
(EXIT_FAILURE)
64 Invalid parameter given. (EX_USAGE)
FILES
/usr/local/etc/dovecot/dovecot.conf
Dovecot's main configuration file.
/usr/local/etc/dovecot/conf.d/90-sieve.conf
Sieve interpreter settings (included from Dovecot's main config‐
uration file)
REPORTING BUGS
Report bugs, including doveconf -n output, to the Dovecot Mailing List
<dovecot@dovecot.org>. Information about reporting Dovecot and Pigeon‐
hole bugs is available at: http://dovecot.org/bugreport.html
SEE ALSOdovecot(1), dovecot-lda(1), sieve-dump(1), sieve-test(1), pigeonhole(7)Pigeonhole for Dovecot v2.0 2010-08-23 SIEVEC(1)