Provided by: dovecot-sieve_2.3.7.2-1ubuntu3_amd64 bug


       sievec - Pigeonhole's Sieve script compiler


       sievec [options] script-file [out-file]


       The  sievec  command  is  part of the Pigeonhole Project (pigeonhole(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 messages and - by means of the LDA Sieve plugin -  also  the
       execution  of  Sieve  scripts  is performed by Dovecot's local delivery agent (LDA) called
       dovecot-lda(1).  Usually, it is not necessary to compile the Sieve script  manually  using
       sievec,  because dovecot-lda will do this automatically if the binary is missing. However,
       in some cases dovecot-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 extension 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 or outdated.

       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.


       -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.

       -D     Enable Sieve debugging.

       -o setting=value
              Overrides  the  configuration  setting  from /etc/dovecot/dovecot.conf and from the
              userdb with the given value.  In order to override multiple settings, the -o option
              may be specified multiple times.

       -u user
              Run the Sieve script for the given user. When omitted, the command will be executed
              with the environment of the currently logged in user.

       -x extensions
              Set the available extensions. The parameter is a space-separated list of the active
              extensions.  By prepending the extension identifiers with + or -, extensions can be
              included or excluded relative to the configured set of  active  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.

              For example -x "+imapflags -enotify" will enable the deprecated imapflags extension
              and disable the enotify extension. The rest of the active extensions depends on the
              sieve_extensions and  sieve_global_extensions  settings.  By  default,  i.e.   when
              sieve_extensions  and  sieve_global_extensions  remain  unconfigured, all supported
              extensions are available, except for deprecated extensions or those that are  still
              under development.


              Specifies  the  script  to be compiled. If the script-file argument is a directory,
              all  files  in  that  directory  with  a  .sieve  extension  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

              Specifies where the (binary) output is to be written. This  argument  is  optional.
              If  this argument is omitted, a binary compiled from <scriptname>.sieve is saved as
              <scriptname>.svbin. If this argument is omitted and -b  is  specified,  the  binary
              dump is output to stdout.


       sievec will exit with one of the following values:

       0   Compile was successful. (EX_OK, EXIT_SUCCESS)

       1   Operation failed. This is returned for almost all failures.  (EXIT_FAILURE)

       64  Invalid parameter given. (EX_USAGE)


              Dovecot's main configuration file.

              Sieve interpreter settings (included from Dovecot's main configuration file)


       Report   bugs,   including   doveconf   -n   output,   to   the   Dovecot   Mailing   List
       <>.    Information   about   reporting   bugs    is    available    at:


       dovecot(1), dovecot-lda(1), sieve-dump(1), sieve-filter(1), sieve-test(1), pigeonhole(7)