On 06/13/2013 04:26 AM, Yonatan Broza wrote:
Hi,
I couldn't find any decent documentation about the IMAPC feature.
Could someone please explain the purpose of this feature?
In particular, what are the differences between IMAPC and reverse proxying?
Thanks.
imapc implements a storage engine for dovecot, so that you can say things like: mail_location = imapc:~/imapc Your mailbox can be stored in maildir, mdbox, or imapc. This would typically be used for special purposes.
Regular proxying ultimately passes the connection on to the backend server and the client is talking to that server directly, given that server's implementation of the IMAP protocol. If you do proxying using imapc, the client is talking to dovecot, dovecot serves the mailbox out of this "storage engine" which in turn translates everything into commands issued against the backend IMAP server. This more complicated setup sometimes can solve problems when the client doesn't get along well with the backend server.
http://wiki2.dovecot.org/HowTo/ImapcProxy
Since imapc can make a remote mailbox appear like a local dovecot mail_location, it can be very useful for migrating mailboxes from another server to dovecot. Using the pop3_migration (and maildir as the destination format) you can even preserve the pop3 UIDL order, so you basically made a perfect clone and clients should continue to work without noticing any difference whatsoever, whether they are using IMAP, POP3 or both.