sieve help

Mark Keasling mark at air.co.jp
Tue Oct 29 21:24:21 EST 2002


Hi,

Here is what I did to get sieve to working on Solaris 8 with cyrus-imapd-2.1.9.
I don't think these actions are OS specific so I'm passing them along.

If you haven't already done so, check the documentation...
Man pages: imapd.conf(5), cyrus.conf(5), timsieved(8), master(8)
doc files: install-sieve.html, sieve-protocol.html, sieve.html

You need to have a sieve line in the /etc/cyrus.conf file's services section
something like:
-----/etc/cyrus.conf-----
<...>
SERVICES {
  <...>
  sieve         cmd="timsieved" listen="sieve" prefork=0
  # this is only necessary if you are using notifications
  notify        cmd="notifyd" listen="/var/imap/socket/notify" proto="udp" prefork=1
  <...>
}
<...>
-------------------------

In /etc/services add a line like the one below if one is not already there:
-----/etc/services------
<...>
sieve           2000/tcp
------------------------

There are some configuration parameters in the /etc/imapd.conf file that also
need to be set:
-----/etc/imapd.conf-----
<...>
##  I'm not using home directories to store scripts. So I comment out
# sieveusehomedir: yes
##  and set the location where scripts are stored.
sievedir: /var/imap/sieve
## the following is necessary to enable notifications (I think)
sievenotifier: null
sendmail: /usr/lib/sendmail
notifysocket: /var/imap/socket/notify
--------------------------

Restarting the master process should allow you to access the sieve server.

Test by attempting to telnet to the sieve server.  If you can connect, enter
"logout" to exit.  After this is successful, you can use sivtest or sieveshell
to fiddle around.  Sample session using cyrus-imapd-2.1.9 should look like:
$ telnet localhost sieve
T> Trying 192.168.0.1...
T> Connected to imap.example.com.
T> Escape character is '^]'.
S> "IMPLEMENTATION" "Cyrus timsieved v1.1.0"
S> "SASL" "PLAIN OTP LOGIN GSSAPI DIGEST-MD5 CRAM-MD5"
S> "SIEVE" "fileinto reject envelope vacation imapflags notify subaddress relational regex"
S> OK
C> logout
S> OK "Logout Complete"
T> Connection closed by foreign host.
$ sivtest -u user -a user -p 2000 imap.example.com
S: "IMPLEMENTATION" "Cyrus timsieved v1.1.0"
S: "SASL" "PLAIN OTP LOGIN GSSAPI DIGEST-MD5 CRAM-MD5"
S: "SIEVE" "fileinto reject envelope vacation imapflags notify subaddress relational regex"
S: OK
C: AUTHENTICATE "DIGEST-MD5"
S: {224}
S: <...b64data...>
Please enter your password: 
C: {340+}
<...b64data...>
S: OK (SASL "<..b64data...>")
S> Authenticated.
S> Security strength factor: 128
C> listscripts
S> "aaa"
S> "bbb"
S> "ccc" ACTIVE
S> OK
C> getscript "aaa"
S> {105}
S> require ["reject","fileinto"];
S> if address :is :all "From" "foo at example.org"
S> {
S>   reject "testing";
S> }
S> 
S> OK
C> logout
S> OK "Logout Complete"
S> Connection closed.

Regards,
Mark Keasling <mark at air.co.jp>





More information about the Info-cyrus mailing list