13 Jul
2008
13 Jul
'08
7:02 a.m.
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@a.cn): Jul 13 11:48:24 Info: Loading modules from directory: /usr/lib64/dovecot/lda deliver(postmaster@a.cn): Jul 13 11:48:24 Info: Module loaded: /usr/lib64/dovecot/lda/lib10_quota_plugin.so deliver(postmaster@a.cn): Jul 13 11:48:24 Info: Module loaded: /usr/lib64/dovecot/lda/lib90_cmusieve_plugin.so deliver(postmaster@a.cn): Jul 13 11:48:24 Info: auth input: postmaster@a.cn deliver(postmaster@a.cn): Jul 13 11:48:24 Info: auth input: home=/home/vmail deliver(postmaster@a.cn): Jul 13 11:48:24 Info: auth input: sieve_dir=/home/vmail/a.cn/postmaster/ deliver(postmaster@a.cn): Jul 13 11:48:24 Info: auth input: quota_rule=*:bytes=0 deliver(postmaster@a.cn): Jul 13 11:48:24 Info: auth input: maildir=a.cn/postmaster/ deliver(postmaster@a.cn): Jul 13 11:48:24 Info: Quota root: name= backend=maildir args= deliver(postmaster@a.cn): Jul 13 11:48:24 Info: Quota rule: root= mailbox=* bytes=0 (0%) messages=0 (0%) deliver(postmaster@a.cn): Jul 13 11:48:24 Info: maildir: data=//home/vmail/a.cn/postmaster/:INDEX=//home/vmail/a.cn/postmaster/ deliver(postmaster@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@a.cn): Jul 13 11:48:24 Info: cmusieve: Using sieve path: /home/vmail/.dovecot.sieve deliver(postmaster@a.cn): Jul 13 11:48:24 Info: cmusieve: Executing script /home/vmail/.dovecot.sievec deliver(postmaster@a.cn): Jul 13 11:48:24 Info: cmusieve: Script not found: /home/vmail/a.cn/postmaster//.dovecot.sieve deliver(postmaster@a.cn): Jul 13 11:48:24 Info: include: Script not found: '.dovecot.sieve' deliver(postmaster@a.cn): Jul 13 11:48:24 Info: sieve runtime error: Include can not find script deliver(postmaster@a.cn): Jul 13 11:48:24 Error: sieve_execute_bytecode(/home/vmail/.dovecot.sievec) failed deliver(postmaster@a.cn): Jul 13 11:48:24 Info: msgid=<48797B06.1070109@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/