[svlug] cyrus & sieve: how to troubleshoot?

Erik Steffl steffl at bigfoot.com
Sun Dec 2 02:24:02 PST 2001

  I am using cyrus 1.6.24 and no matter what I do I cannot make sieve to
filter the email. I have set the delivery protocol to lmtp (in postfix),
set the cyrus deliver to deliver it using -l option (and it does, it is
in services and I actually see log message from cyrus deliver).

  I get no error messages (or any messages regarding sieve) and I have
no idea how to troubleshoot this, it's just not being filtered.

  I enabled cyrus log using:

local6.*                /var/log/cyrus.log

  but the only messages I see there are:

Dec  2 01:49:01 localhost deliver[3538]: connection from
... lot of same message as above ...
Dec  2 01:40:17 localhost imapd[3420]: login: localhost[] erik
Dec  2 01:45:48 localhost imapd[3495]: open: user erik opened
... or open other folders/mailboxes ....

  there are no details about mail delivery or sieve.

  I tested my ~/.sieve file using test program in sieve directory of
cyrus distribution, the result is as expected (it said the message with
given subject would be rejected, but it's not).

  is there any way to find out whether cyrus reads the file? or tries to
read the file? I su-ed to cyrus and was able to read the file, here are
the permissions:

drwxr-xr-x  141 erik     erik         8192 Dec  1 22:01 /home/erik
-rw-r--r--    1 erik     erik          297 Nov 25 20:44

  I also linked it to .sieverc, even though the docs say .sieve

  here are the relevant parts of config files:

------------------------- /etc/postfix/main.cf
mailbox_transport = lmtp
------------------------- /etc/postfix/master.cf
lmtp      unix  -       -       n       -       -       lmtp
------------------------- /etc/imapd.conf
sieveusehomedir: true
------------------------- /etc/services
cfinger         2003/tcp        lmtp            # GNU Finger / Local
Mail Transfer Protocol
------------------------- /etc/inetd.conf
lmtp            stream  tcp     nowait  cyrus   /usr/sbin/cyrdeliver
/usr/sbin/cyrdeliver -l
------------------------- /home/erik/.sieve (whole file is below)
require "reject";

if header :contains "subject" "123 testing sieve" {
  reject "testing sieve message rejected!";

  any ideas? TIA


More information about the svlug mailing list