dovecot: Added mailbox_sync() to easily synchronize a mailbox.
dovecot at dovecot.org
dovecot at dovecot.org
Sat Sep 22 16:25:21 EEST 2007
details: http://hg.dovecot.org/dovecot/rev/60a34f26c35a
changeset: 6462:60a34f26c35a
user: Timo Sirainen <tss at iki.fi>
date: Sat Sep 22 16:21:09 2007 +0300
description:
Added mailbox_sync() to easily synchronize a mailbox.
diffstat:
2 files changed, 18 insertions(+)
src/lib-storage/mail-storage.c | 13 +++++++++++++
src/lib-storage/mail-storage.h | 5 +++++
diffs (38 lines):
diff -r c057369df638 -r 60a34f26c35a src/lib-storage/mail-storage.c
--- a/src/lib-storage/mail-storage.c Sat Sep 22 16:15:12 2007 +0300
+++ b/src/lib-storage/mail-storage.c Sat Sep 22 16:21:09 2007 +0300
@@ -520,6 +520,19 @@ int mailbox_sync_deinit(struct mailbox_s
return ctx->box->v.sync_deinit(ctx, status_items, status_r);
}
+int mailbox_sync(struct mailbox *box, enum mailbox_sync_flags flags,
+ enum mailbox_status_items status_items,
+ struct mailbox_status *status_r)
+{
+ struct mailbox_sync_context *ctx;
+ struct mailbox_sync_rec sync_rec;
+
+ ctx = mailbox_sync_init(box, flags);
+ while (mailbox_sync_next(ctx, &sync_rec))
+ ;
+ return mailbox_sync_deinit(&ctx, status_items, status_r);
+}
+
#undef mailbox_notify_changes
void mailbox_notify_changes(struct mailbox *box, unsigned int min_interval,
mailbox_notify_callback_t *callback, void *context)
diff -r c057369df638 -r 60a34f26c35a src/lib-storage/mail-storage.h
--- a/src/lib-storage/mail-storage.h Sat Sep 22 16:15:12 2007 +0300
+++ b/src/lib-storage/mail-storage.h Sat Sep 22 16:21:09 2007 +0300
@@ -291,6 +291,11 @@ int mailbox_sync_deinit(struct mailbox_s
int mailbox_sync_deinit(struct mailbox_sync_context **ctx,
enum mailbox_status_items status_items,
struct mailbox_status *status_r);
+/* One-step mailbox synchronization. Use this if you don't care about
+ changes. */
+int mailbox_sync(struct mailbox *box, enum mailbox_sync_flags flags,
+ enum mailbox_status_items status_items,
+ struct mailbox_status *status_r);
/* Call given callback function when something changes in the mailbox. */
void mailbox_notify_changes(struct mailbox *box, unsigned int min_interval,
More information about the dovecot-cvs
mailing list