summaryrefslogtreecommitdiffstats
path: root/pigeonhole/doc/locations/file.txt
diff options
context:
space:
mode:
Diffstat (limited to 'pigeonhole/doc/locations/file.txt')
-rw-r--r--pigeonhole/doc/locations/file.txt48
1 files changed, 48 insertions, 0 deletions
diff --git a/pigeonhole/doc/locations/file.txt b/pigeonhole/doc/locations/file.txt
new file mode 100644
index 0000000..1c291d9
--- /dev/null
+++ b/pigeonhole/doc/locations/file.txt
@@ -0,0 +1,48 @@
+FILE Sieve Script Location Type
+
+Description
+===========
+
+This location type is used to retrieve Sieve scripts from the file system. 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/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. Refer to the
+INSTALL file for more general information about configuration of script
+locations.
+
+Configuration
+=============
+
+The script location syntax is specified as follows:
+
+location = file:<path>[;<option>[=<value>][;...]]
+
+The following additional options are recognized:
+
+ active=<path>
+ When ManageSieve is used, one script in the storage can be active; i.e.,
+ evaluated at delivery. For the `file' location, 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
+}
+