sieve-test man page on DragonFly

Man page or keyword search:  
man Server   44335 pages
apropos Keyword Search (all sections)
Output format
DragonFly logo
[printable version]

SIEVE-TEST(1)							 SIEVE-TEST(1)

NAME
       sieve-test - Sieve script tester for the Dovecot secure IMAP server

SYNOPSIS
       sieve-test [-c] [-d dump-file] [-e] [-f envelope-sender] [-l mail-loca‐
       tion] [-m default-mailbox] [-r recipient-address] [-S script-file] [-t]
       [-x "extension extension ..."]  script-file mail-file

DESCRIPTION
       The  sieve-test	command	 is  part  of the Sieve implementation for the
       Dovecot secure IMAP server. Sieve (RFC 5228) is	a  simple  and	highly
       extensible  language  for  filtering  e-mail messages. It can be imple‐
       mented for any type of mail  access  protocol,  mail  architecture  and
       operating  system. The language cannot execute external programs and in
       its basic form it does not provide the means to cause  infinite	loops,
       making  it  suitable  for  running  securely on mail servers where mail
       users have no permission run arbitrary programs.

       Using the sieve-test command, the execution of  Sieve  scripts  can  be
       tested.	This evaluates the script for the provided message, yielding a
       set of Sieve actions. Unless the -e option is specified,	 it  does  not
       actually	 execute these actions, meaning that it does not store or for‐
       ward the message anywere. In stead, it prints a detailed list  of  what
       actions	would  normally take place.  Note that, even when -e is speci‐
       fied, no messages are ever transmitted to remote SMTP  recipients.  The
       outgoing messages are printed to stdout in stead.

       This  is a very useful tool to debug the execution of Sieve scripts. It
       can be used to verify newly installed scripts for the  intended	behav‐
       iour  and  it can provide more detailed information about script execu‐
       tion problems that are reported by the Sieve plugin.

       The command has two  mandatory  arguments:  the	script-file  argument,
       which  specifies the script to (compile and) execute, and the mail-file
       argument, which specifies the file containing  the  e-mail  message  to
       filter.

       Note  that this tool looks for a pre-compiled binary file with a .svbin
       extension and with basename and path identical to the specified script.
       Use  the -c option to disable this behavior by forcing the script to be
       compiled into a new binary.

OPTIONS
       -c     Force compilation. By default, the compiled binary is stored  on
	      disk.  When  this	 binary	 is found during the next execution of
	      sieve-test and its modification time is  more  recent  than  the
	      script  file,  it	 is used and the script is not compiled again.
	      This option forces the script to be compiled, thus ignoring  any
	      present  binary.	Refer  to sievec(1) for more information about
	      Sieve compilation.

       -d dump-file
	      Causes a dump of the generated code to be written to the	speci‐
	      fied  file. This is identical to the dump produced by sieved(1).
	      Using '-' as filename causes the dump to be written to stdout.

       -e     Turns on true execution of the set of actions that results  from
	      running  the  script.  In combination with the -l parameter, the
	      actual delivery of messages can be tested. Note that  this  will
	      not  transmit  any  messages  to	remote	SMTP  recipients. Such
	      actions only print the outgoing message to stdout.

       -f envelope-sender
	      The envelope sender or return path. This is what	Sieve's	 enve‐
	      lope  test  will	compare	 to  when  the "from" envelope part is
	      requested. Also, this is where response messages are sent to.

       -l mail-location
	      The location of the  user's  mail	 store.	 The  syntax  of  this
	      option's	mail-location  parameter  is identical to what is used
	      for the mail_location setting in the Dovecot config  file.  This
	      parameter	 is  typically used in combination with -e to test the
	      actual delivery of messages.  If -l is omitted when -e is speci‐
	      fied, mail store actions like fileinto and keep are skipped.

       -m default-mailbox
	      The  mailbox  where  the keep action stores the message. This is
	      "INBOX" by default.

       -r recipient-address
	      The envelope recipient address. This is  what  Sieve's  envelope
	      test  will  compare to when the "to" envelope part is requested.
	      Some tests and actions will also use this as the owner's	e-mail
	      address.

       -S script-file
	      Specify  additional  scripts  to	be  executed  before  the main
	      script. Multiple -S arguments  are  allowed  and	the  specified
	      scripts  are executed sequentially in the order specified at the
	      command line.

       -t     Enable simple trace debugging; prints all encountered byte  code
	      instructions  to stdout. This is currently only intelligible for
	      developers.

       -x "extension extension ..."
	      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.

DEBUG SUPPORT
       To improve script debugging, the	 Sieve	command	 line  tools  such  as
       sieve-test  support a custom Sieve language extension called 'vnd.dove‐
       cot.debug'. It adds the debug_print command that allows printing	 debug
       messages to stdout.

       Example:

       require "vnd.dovecot.debug";

       if header :contains "subject" "hello" {

	 debug_print "Subject header contains hello!";

       }

       Other tools like sievec and sieved also recognize the vnd.dovecot.debug
       extension. In contrast, the actual Sieve plugin	for  the  Dovecot  LDA
       does  not  allow	 the use of the debug extension. So, keep in mind that
       scripts and compiled binaries that refer to  de	debug  extension  will
       fail to be run by the Sieve plugin itself.

       Note  that  it  is  not necessary to enable nor possible to disable the
       availability of the debug extension with the -x option.

AUTHOR
       The Sieve implementation for  Dovecot  was  written  by	Stephan	 Bosch
       <stephan@rename-it.nl>.

       Dovecot was written by Timo Sirainen <tss@iki.fi>.

SEE ALSO
       sievec(1), sieved(1)

				  4 July 2009			 SIEVE-TEST(1)
[top]

List of man pages available for DragonFly

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Tweet
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
....................................................................
Vote for polarhome
Free Shell Accounts :: the biggest list on the net