This documentation is for Dovecot v2.x, see wiki1 for v1.x documentation.
Differences between revisions 4 and 5
Revision 4 as of 2018-06-06 21:29:24
Size: 2695
Editor: 62-178-24-37
Comment:
Revision 5 as of 2022-02-04 23:08:21
Size: 67
Editor: TimoSirainen
Comment:
Deletions are marked like this. Additions are marked like this.
Line 1: Line 1:
= Pigeonhole Sieve: File Location for Sieve Scripts =

The {{{file}}} [[Pigeonhole/Sieve/Configuration#script_locations|location type]] is used to retrieve Sieve scripts from the file system. This is the default type if the type specifier is omitted from the location specification. The location can either point to a directory or to a regular file. If the location points to a directory, a script called {{{name}}} is retrieved by reading a file from that directory with the file name {{{name.sieve}}}.

When this location type is involved in a {{{sieve_before}}} or {{{sieve_after}}} script sequence and the location points to a directory, all files in that directory with a {{{.sieve}}} extension are part of the sequence. The sequence order of the scripts in that directory is determined by the file names, using a normal 8bit per-character comparison.
 
Unless overridden using the {{{;bindir=<path>}}} location option, compiled binaries for scripts retrieved from the {{{file}}} location type are by default stored in the same directory as where the script file was found if possible.

== Configuration ==

The script location syntax is specified as follows:

{{{
location = file:<path>[;<option>[=<value>][;...]]
}}}

The following additional options are recognized:

 active=<path> :: When [[Pigeonhole/ManageSieve|ManageSieve]] is used, one script in the storage can be active; i.e., evaluated at delivery. For the {{{file}}} location type, the active script in the storage directory is pointed to by a symbolic link. This option configures where this symbolic link is located. If the {{{file}}} location path points to a regular file, this setting has no effect (and !ManageSieve cannot be used).

== Example ==

{{{
plugin {
 ...
  sieve = file:~/sieve;active=~/.dovecot.sieve

  sieve_default = file:/var/lib/dovecot/;name=default
}
}}}

On [[Pigeonhole/Sieve]] 2.2.13-12~deb8u4 combined with [[Pigeonhole/ManageSieve|ManageSieve]] on Debian the active option didn't worked and it lead to following errors/warnings:

{{{
Warning: sieve-storage: Active sieve script symlink /var/mail/xxx/xxx/xxx/sieve is no symlink
}}}

{{{
Error: sieve: sieve file backend: invalid option `active=~/.dovecot.sieve'
}}}


{{{
managesieve(<MAILBOX>): Error: sieve-storage: Active sieve script file '/var/mail/xxx/xxx/xxx/sieve' is no symlink nor a regular file. This needs to be fixed manually.
}}}


Therefore we just used it without the active option as follows and then it worked:

(We adjusted of course the file paths to our needs)

{{{
plugin {
 ...
  sieve = file:~/sieve;

  sieve_default = file:/var/lib/dovecot/;name=default
}
}}}
Moved to https://doc.dovecot.org/configuration_manual/sieve/file/

None: Pigeonhole/Sieve/Configuration/File (last edited 2022-02-04 23:08:21 by TimoSirainen)