[Dovecot] 'include' feature in sieve 1.1.5

Zhang Huangbin zhbmaillistonly at gmail.com
Sun Jul 13 07:02:10 EEST 2008


Hi, all.

I use dovecot-1.1.1 and dovecot-1.1.5 which built by atrpms, and i
use 'include' command to include two/several personal sieve rule file,
but if either of these personal sieve rule files is not exist,
sieve_execute_bytecode failed.

How can i make it just skip the non-exist personal sieve rule file,
and continue to try to include next sieve rule file?

Thanks very much. :)

In /etc/dovecot.conf:
----8<----
protocol lda {
    postmaster_address = root
    auth_socket_path = /var/run/dovecot/auth-master
    mail_plugins = cmusieve quota
    sieve_global_path = /home/vmail/.dovecot.sieve
    log_path = /var/log/sieve.log
}
----8<----

In /etc/dovecot-mysql.conf:
----
user_query = SELECT xxx, xxx, '/home/vmail/%Ld/%Ln/' AS sieve_dir, xxx
----

My sieve rule: /home/vmail/.dovecot.sieve:
----
require ["fileinto", "reject", "include"];

include :personal ".dovecot.sieve";
include :personal ".vacation.sieve";
----

Log:
----8<----
deliver(postmaster at a.cn): Jul 13 11:48:24 Info: Loading modules from 
directory: /usr/lib64/dovecot/lda
deliver(postmaster at a.cn): Jul 13 11:48:24 Info: Module loaded: 
/usr/lib64/dovecot/lda/lib10_quota_plugin.so
deliver(postmaster at a.cn): Jul 13 11:48:24 Info: Module loaded: 
/usr/lib64/dovecot/lda/lib90_cmusieve_plugin.so
deliver(postmaster at a.cn): Jul 13 11:48:24 Info: auth input: postmaster at a.cn
deliver(postmaster at a.cn): Jul 13 11:48:24 Info: auth input: home=/home/vmail
deliver(postmaster at a.cn): Jul 13 11:48:24 Info: auth input: 
sieve_dir=/home/vmail/a.cn/postmaster/
deliver(postmaster at a.cn): Jul 13 11:48:24 Info: auth input: 
quota_rule=*:bytes=0
deliver(postmaster at a.cn): Jul 13 11:48:24 Info: auth input: 
maildir=a.cn/postmaster/
deliver(postmaster at a.cn): Jul 13 11:48:24 Info: Quota root: name= 
backend=maildir args=
deliver(postmaster at a.cn): Jul 13 11:48:24 Info: Quota rule: root= 
mailbox=* bytes=0 (0%) messages=0 (0%)
deliver(postmaster at a.cn): Jul 13 11:48:24 Info: maildir: 
data=//home/vmail/a.cn/postmaster/:INDEX=//home/vmail/a.cn/postmaster/
deliver(postmaster at a.cn): Jul 13 11:48:24 Info: maildir++: 
root=//home/vmail/a.cn/postmaster, index=, control=, 
inbox=//home/vmail/a.cn/postmaster
deliver(postmaster at a.cn): Jul 13 11:48:24 Info: cmusieve: Using sieve 
path: /home/vmail/.dovecot.sieve
deliver(postmaster at a.cn): Jul 13 11:48:24 Info: cmusieve: Executing 
script /home/vmail/.dovecot.sievec
deliver(postmaster at a.cn): Jul 13 11:48:24 Info: cmusieve: Script not 
found: /home/vmail/a.cn/postmaster//.dovecot.sieve
deliver(postmaster at a.cn): Jul 13 11:48:24 Info: include: Script not 
found: '.dovecot.sieve'
deliver(postmaster at a.cn): Jul 13 11:48:24 Info: sieve runtime error: 
Include can not find script
deliver(postmaster at a.cn): Jul 13 11:48:24 Error: 
sieve_execute_bytecode(/home/vmail/.dovecot.sievec) failed
deliver(postmaster at a.cn): Jul 13 11:48:24 Info: 
msgid=<48797B06.1070109 at a.cn>: saved mail to INBOX
----

-- 
Best Regards.

Zhang Huangbin

- iRedMail: Mail Server Solution for Red Hat(R) Enterprise Linux &
  CentOS 5.x: http://iRedMail.googlecode.com/



More information about the dovecot mailing list