dovecot-2.2: doveadm dump: Added support for mobox extensions in...
dovecot at dovecot.org
dovecot at dovecot.org
Fri Apr 25 13:36:30 UTC 2014
details: http://hg.dovecot.org/dovecot-2.2/rev/5798bb0167b9
changeset: 17270:5798bb0167b9
user: Timo Sirainen <tss at iki.fi>
date: Fri Apr 25 16:35:51 2014 +0300
description:
doveadm dump: Added support for mobox extensions in dovecot.index.
diffstat:
src/doveadm/doveadm-dump-index.c | 41 ++++++++++++++++++++++++++++++++++++++++
1 files changed, 41 insertions(+), 0 deletions(-)
diffs (65 lines):
diff -r b53ebeaba6aa -r 5798bb0167b9 src/doveadm/doveadm-dump-index.c
--- a/src/doveadm/doveadm-dump-index.c Fri Apr 25 16:18:09 2014 +0300
+++ b/src/doveadm/doveadm-dump-index.c Fri Apr 25 16:35:51 2014 +0300
@@ -53,6 +53,25 @@
unsigned char guid[GUID_128_SIZE];
unsigned char oid[GUID_128_SIZE];
};
+struct mobox_mail_index_header {
+ uint32_t rebuild_count;
+ uint32_t map_uid_validity;
+ uint8_t unused[4];
+ guid_128_t mailbox_guid;
+};
+struct mobox_mail_index_record {
+ uint32_t map_uid;
+ uint32_t save_date;
+};
+struct mobox_map_mail_index_header {
+ uint32_t rebuild_count;
+};
+
+struct mobox_map_mail_index_record {
+ uint32_t offset;
+ uint32_t size;
+ guid_128_t oid;
+};
struct mailbox_list_index_record {
uint32_t name_id;
uint32_t parent_uid;
@@ -184,6 +203,19 @@
printf(" - mailbox_guid .. = %s\n",
guid_128_to_string(hdr->mailbox_guid));
printf(" - flags ......... = 0x%x\n", hdr->flags);
+ } else if (strcmp(ext->name, "mobox-hdr") == 0) {
+ const struct mobox_mail_index_header *hdr = data;
+
+ printf("header\n");
+ printf(" - rebuild_count .. = %u\n", hdr->rebuild_count);
+ printf(" - map_uid_validity .. = %u\n", hdr->map_uid_validity);
+ printf(" - mailbox_guid ...... = %s\n",
+ guid_128_to_string(hdr->mailbox_guid));
+ } else if (strcmp(ext->name, "mobox-map") == 0) {
+ const struct mobox_map_mail_index_header *hdr = data;
+
+ printf("header\n");
+ printf(" - rebuild_count .. = %u\n", hdr->rebuild_count);
} else if (strcmp(ext->name, "modseq") == 0) {
const struct mail_index_modseq_header *hdr = data;
@@ -579,6 +611,15 @@
const struct obox_mail_index_record *orec = data;
printf(" : guid = %s\n", guid_128_to_string(orec->guid));
printf(" : oid = %s\n", guid_128_to_string(orec->oid));
+ } else if (strcmp(ext[i].name, "mobox") == 0) {
+ const struct mobox_mail_index_record *orec = data;
+ printf(" : map_uid = %u\n", orec->map_uid);
+ printf(" : save_date = %u (%s)\n", orec->save_date, unixdate2str(orec->save_date));
+ } else if (strcmp(ext[i].name, "mobox-map") == 0) {
+ const struct mobox_map_mail_index_record *orec = data;
+ printf(" : offset = %u\n", orec->offset);
+ printf(" : size = %u\n", orec->size);
+ printf(" : oid = %s\n", guid_128_to_string(orec->oid));
} else if (strcmp(ext[i].name, "list") == 0) {
const struct mailbox_list_index_record *lrec = data;
printf(" : name_id = %u\n", lrec->name_id);
More information about the dovecot-cvs
mailing list