Dovecot Design ============== * [Design.Processes.txt] * [Design.Indexes.txt] * [Design.Indexes.MailIndexApi.txt] * [Design.AuthProcess.txt] * [Design.AuthProtocol.txt] * [Design.MailProcess.txt] * [Design.DoveadmProtocol.txt] and [Design.DoveadmProtocol.HTTP.txt] * [Design.Dsync.txt] Code APIs --------- * [Design.Code.txt] - explanations how and why the coding style is the way it is Look at the *.h files for the actual API documentation. The documentation below doesn't attempt to list full API documentation. liblib: * [Design.Memory.txt] * [Design.Buffers.txt] * [Design.Arrays.txt] * [Design.Strings.txt] * [Design.InputStreams.txt] * [Design.OutputStreams.txt] * [Design.Plugins.txt] lib-dcrypt: * [Design.Dcrypt.txt] lib-storage: * [Design.Storage.MailUser.txt] contains everything related to a single user. * [Design.Storage.MailNamespace.txt]: A single user can contain multiple [Namespaces.txt]. * [Design.Storage.MailboxList.txt] is used to list/manage a list of mailboxes for a single namespace (1:1 relationship). * [Design.Storage.MailStorage.txt] is used to access mails in a specific location with a specific mailbox format. Multiple namespaces can point to the same storage. A single namespace may in future (but not currently) point to multiple storages (e.g. a mixed mbox and Maildir directory). * [Design.Storage.Mailbox.txt] is used to access a specific mailbox in a storage. * [Design.Storage.Mail.txt] is used to access a specific mail in a mailbox. * [Design.Storage.ErrorHandling.txt]. * [Design.Storage.Plugins.txt] - how to hook into lib-storage functions. (This file was created from the wiki on 2017-10-10 04:42)