pysieved: Python Managesieve Server
===================================
This is a GPL managesieve server. It uses a plug-in architecture to
support different authentication, homedir lookup, and storage
back-ends.
Originally written by Neale Pickett for use with avelsieve (SquirrelMail),
Postfix and Dovecot. It should work with other managesieve clients too.
Please share with us your successes and failures.
Plugin architecture
-------------------
The server ships with the following plug-ins:
Authentication:
* [Dovecot](http://gitorious.org/pysieved/pages/Dovecot)
* /etc/passwd, /etc/shadow ([dev branch](http://gitorious.org/pysieved/pysieved/commits/dev))
* PAM
* SASL
* LDAP ([dev branch](http://gitorious.org/pysieved/pysieved/commits/dev))
* MySQL
* Courier ([dev branch](http://gitorious.org/pysieved/pysieved/commits/dev))
Homedir lookup & session initiation:
* Dovecot
* /etc/passwd
* LDAP
* MySQL
* simple virtual hosting (eg. /var/lib/virtual/username)
Storage:
* Dovecot (.dovecot.sieve)
* Exim (.forward)
* MySQL ([dev branch](http://gitorious.org/pysieved/pysieved/commits/dev))
* lmtpd ([dev branch](http://gitorious.org/pysieved/pysieved/commits/dev))
Consumer ([dev branch](http://gitorious.org/pysieved/pysieved/commits/dev)):
* Dovecot
* [Exim](http://gitorious.org/pysieved/pages/Exim)
* lmtpd ([dev branch](http://gitorious.org/pysieved/pysieved/commits/dev))
Additional back-ends are easy to write, just copy one of the existing
back-ends and start hacking. No modifications are needed to any
existing code, so you don't have to worry about things like the
managesieve protocol or forking.
Download
--------
Version 1.2 was released on January 27, 2014.
You can get the latest version [as a tarball](http://gitorious.org/pysieved/pysieved/archive-tarball/master),
or with git:
git clone git://gitorious.org/pysieved/pysieved.git
A [web view of revisions](http://gitorious.org/pysieved/pysieved) is
also available for those without git.
If you like being on the bleeding edge, try the [dev branch](http://gitorious.org/pysieved/pysieved/commits/dev)
Installation
------------
Put all the files somewhere, for instance /usr/local/lib/pysieved.
Copy pysieved.ini into /usr/local/etc/, and edit to taste. It's
commented.
To run from inetd, add the following line to /etc/inetd.conf:
sieve stream tcp nowait root /usr/bin/python python /usr/local/lib/pysieved/pysieved.py --inetd
To run as a daemon, just run
python pysieved.py
Troubleshooting
---------------
If you encounter problems, try the tips in the [TROUBLESHOOTING
document](http://gitorious.org/pysieved/pages/Troubleshooting).
Mail list / IRC channel
-----------------------
If you use pysieved, please join the pysieved mail list by emailing
[[email protected]](mailto:[email protected]) or
visiting the [subscription page](http://woozle.org/lists/pysieved).
To talk about pysieved on IRC, join us in
[#pysieved on irc.oftc.net](irc://irc.oftc.net/pysieved).
--------
Neale Pickett <[email protected]> and Philippe Levan <[email protected]>