The private mailbox database design gives the server large advantages in efficiency, scalability, and administratability. Multiple concurrent read/write connections to the same mailbox are permitted. The server supports access control lists on mailboxes and storage quotas on mailbox hierarchies.
The Cyrus server supports the IMAP4rev1 protocol described in RFC 2060. IMAP4rev1 has been approved as a proposed standard.
Character sets supported for searching are: us-ascii, iso-8859-1, iso-8859-2, iso-8859-3, iso-8859-4, iso-8859-5, iso-8859-6, iso-8859-7, iso-8859-8, iso-8859-9, koi8-r, and iso-2022-jp. The character mapping tables most likely contain errors.
The server supports any authentication mechanism available from the SASL library. Currently, support includes: KERBEROS_V4, GSSAPI, CRAM-MD5, DIGEST-MD5, OTP, PLAIN, and STARTTLS.
The server supports imaps/pop3s (IMAP/POP3 encrypted using SSL).
The server makes an attempt to do single instance store where possible when an email message is addressed to multiple recipients.
We current support the following IMAP capabilities: IMAP4 IMAP4rev1 ACL QUOTA LITERAL+ NAMESPACE UIDPLUS ID NO_ATOMIC_RENAME UNSELECT CHILDREN MULTIAPPEND SORT THREAD=ORDEREDSUBJECT THREAD=REFERENCES IDLE STARTTLS.
The server supports SIEVE for server side email filtering.
This system should be expected to have the same order-of-magnitude installation complexity as a netnews system. Maintenance should have similar complexity, except administrators will have to deal with creation and deletion of users and will have the option of managing quotas and access control lists.
This package is distributed as a source only release. It is expected that you can compile and configure software. Installation instructions are in the install.html. Please be sure to read this document.
A detailed overview of the server is available in overview.html.
This server has been successfully installed on a number of Unix systems. We run the software under SPARC Solaris 2.7. Please refer to os.html for operating system specific issues.
The mailbox namespace is like that for netnews--hierarchical names separated by the "." character. Mailboxes without a parent may only be created by an administrator. Mailboxes with a parent may be created as the ACL (Access Control List) on the parent mailbox permits.
Users' personal mailboxes are under the "user" hierarchy. The names of the personal mailboxes for user "bovik" all start with the prefix "user.bovik.". The mailbox "user.bovik" is special in that it is presented to user "bovik" as if it were named "INBOX". Creating the mailbox "user.bovik" is equivalent to creating an account for user "bovik"--it permits "bovik" to receive mail, create personal mailboxes, and subscribe to mailboxes. Deleting the mailbox "user.bovik" has the special-case side-effect of deleting all mailboxes starting with "user.bovik." and of deleting the subscriptions for "bovik."
* Copyright (c) 1994-2000 Carnegie Mellon University. All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * * 1. Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in * the documentation and/or other materials provided with the * distribution. * * 3. The name "Carnegie Mellon University" must not be used to * endorse or promote products derived from this software without * prior written permission. For permission or any legal * details, please contact * Office of Technology Transfer * Carnegie Mellon University * 5000 Forbes Avenue * Pittsburgh, PA 15213-3890 * (412) 268-4387, fax: (412) 268-7395 * email@example.com * * 4. Redistributions of any form whatsoever must retain the following * acknowledgment: * "This product includes software developed by Computing Services * at Carnegie Mellon University (http://www.cmu.edu/computing/)." * * CARNEGIE MELLON UNIVERSITY DISCLAIMS ALL WARRANTIES WITH REGARD TO * THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY * AND FITNESS, IN NO EVENT SHALL CARNEGIE MELLON UNIVERSITY BE LIABLE * FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN * AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING * OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
If you find this software useful and valuable in your work, we would welcome any support you can offer toward continuing this work. We gratefully accept contributions, whether intellectual or monetary. Intellectual contributions in the form of code or constructive collaboration can be directed via the feedback page.
If you wish to provide financial support to the Cyrus Project, send a check payable to "Carnegie Mellon University" to
Project Cyrus Computing Services Carnegie Mellon University 5000 Forbes Ave Pittsburgh, PA 15213 USA
If you want to install the server, be sure to read the installation instructions in install.html.
More details about the server implementation is in the server overview document.
Please refer to Sending Feedback if you would like to submit a bug, feature request or (best of all) patch.
There is a mailing list. See the mailing list document for details.
A list of known problems can be found in the bugs file.
O'Reilly has a book out named Managing IMAP. While the book does not directly talk about the 2.0 code base, it provides very good information on the configuration and setup that can be applied to the newer code.