dovecot-2.1: mailbox list indexes: Added comment.
dovecot at dovecot.org
dovecot at dovecot.org
Sun Oct 2 18:22:11 EEST 2011
details: http://hg.dovecot.org/dovecot-2.1/rev/612b8a73ada7
changeset: 13591:612b8a73ada7
user: Timo Sirainen <tss at iki.fi>
date: Sun Oct 02 18:30:32 2011 +0300
description:
mailbox list indexes: Added comment.
diffstat:
src/lib-storage/list/mailbox-list-index.h | 21 +++++++++++++++++++++
1 files changed, 21 insertions(+), 0 deletions(-)
diffs (31 lines):
diff -r 6912969d94e8 -r 612b8a73ada7 src/lib-storage/list/mailbox-list-index.h
--- a/src/lib-storage/list/mailbox-list-index.h Sun Oct 02 18:12:05 2011 +0300
+++ b/src/lib-storage/list/mailbox-list-index.h Sun Oct 02 18:30:32 2011 +0300
@@ -1,6 +1,27 @@
#ifndef MAILBOX_LIST_INDEX_H
#define MAILBOX_LIST_INDEX_H
+/* Mailbox list index basically contains:
+
+ Header contains ID => name mapping. The name isn't the full mailbox name,
+ but rather each hierarchy level has its own ID and name. For example a
+ mailbox name "foo/bar" (with '/' as separator) would have separate IDs for
+ "foo" and "bar" names.
+
+ The records contain { parent_uid, uid, name_id } field that can be used to
+ build the whole mailbox tree. parent_uid=0 means root, otherwise it's the
+ parent node's uid.
+
+ Each record also contains GUID for each selectable mailbox. If a mailbox
+ is recreated using the same name, its GUID also changes. Note however that
+ the UID doesn't change, because the UID refers to the mailbox name, not to
+ the mailbox itself.
+
+ The records may contain also extensions for allowing mailbox_get_status()
+ to return values directly from the mailbox list index. Storage backends
+ may also add their own extensions to figure out if a record is up to date.
+*/
+
#include "module-context.h"
#include "mailbox-list-private.h"
More information about the dovecot-cvs
mailing list