Hello,

One of the disadvantage of using Cyrus might be that there is
no API to the mail store other than the IMAP protocol. You simply
cannot go mucking around the mail store with "external programs"
without the potential to cause problems.

That said, mail is stored in directories that map unto folders
and each message has its own file. Seems pretty straight forward
until you realize that the file names and directories have
metadata associated with them that the IMAP server process needs
and maintains. One simply does not mkdir in someone's account
and expect the corresponding folder to show up. Nor can you
simply create a file with what appears to be an appropriate name
and have the message show up in a folder.

Cyrus documentation calls the IMAP server a black box. This is
defined to mean that the users do not have access to the
account/data accept through the well defined ( :-/ ) IMAP protocol.
This black box concept also extends to a certain extent to
the administrators of the servers.

Best way to learn something is through experience. Set up a
server and look at how it does things. If you opt for compiling
it yourself choose the flat file options for all the databases.
This will leave the data in a format that is human readable,
sorta, and you can figure out what is going on.

Regards,
Earl Shannon



Phil Howard wrote:
A couple people have suggested to me that I use Cyrus-IMAP as
opposed to Courier-IMAP, and have given some good arguments
for that decision direction.  However, I have still have one
show stopper for that switch: some external programs that work
directly with the storage space of all the mail.  Due to the
nature of some of these programs, accessing that mail by means
of the IMAP protocol or any delivery protocol is not an option.

What I want to examine at this point is the potential ease of
converting those programs to work with the format Cyrus-IMAP
stores its mail.  Had Cyrus-IMAP used the Maildir format, this
would be a simple "unplug Courier" and "plugin Cyrus".  The
issue is not about converting existing messages (the transition
will be done with all empty mailboxes).  The issue is knowing
the details of the format in its entirety.

I've looked around the web site and the source file tree and I
find no documentation on this format.  I have been told two
different stories about references to other formats it is like.
But then, I've also heard people tell me Cyrus-IMAP really
does use Maildir format (and as far as I can see, that simply
is not true).

So basically, I'm asking if any documentation(s) exists which
would described (preferrably in a "standards" style) just what
the format is.  Please don't refer me to the source code, as
I already have that, and I've never found that method to be
a clean way to deal with all the issues (too often semantics
are missed because the implementation doesn't push requirements
to the edge).  Documents in ASCII, HTML, or PDF preferred.

I was also looking for documentation on SASL.  That I found in
the RFCs.  That's the kind of thing I'm looking for regarding
the file formats.


Reply via email to