[Dovecot] Plugin development question

Gary Smith gary at holdstead.com
Tue Sep 4 08:28:34 EEST 2007


> I think you should begin with Dovecot v1.1 code which makes it a lot
> easier. It has Cydir format that is really simple and serves as a
> pretty good example of how to implement a new backend.

I've been digging though the cydir format.  It looks fairly simple.
Basically, the short gist of it is that I will be replacing some of the
service calls (that retrieve data) with web service calls (to retrieve
data).  The data for the messages themselves (i.e. the envelope) is
stored in a database.

So looking into the cydir, I see the retrieval and storage functions.
Since this is read only, this part is pretty simple, I think.

But the Maildir list functions seem a little more complicated.  I'm
walking through them right now.  From looking into it, it seems there
are several functions that I will need to define in my own class to
handle/override the existing core functions.  Where can I get a list of
all of the virtual functions that can be derived from, without digging
through the code completely.  

Also, keeping in mind that everything is basically read only from a
client perspective, can I only implement the read functions and still
end up with a working system?

Please bear in mind that my C skills are 10 years old, so a lot of this
is a learning experience :).

BTW, you mentioned the FS backend.  I didn't see that under
lib-storage/*.  

Gary

> 
> Cydir is a mail_storage backend, but you'll probably need to also
> implement mailbox_list backend. Shouldn't be too difficult by looking
> at FS and Maildir++ backends I think.


More information about the dovecot mailing list