Mercurial > dovecot > core-2.2
view src/lib-storage/list/mailbox-list-subscriptions.h @ 12637:4e4c7f982fd5
lib-storage: Cleaned up subscription listing internally.
The subscription listing code is now mostly separated from the mailbox
listing code.
author | Timo Sirainen <tss@iki.fi> |
---|---|
date | Wed, 02 Feb 2011 05:33:04 +0200 |
parents | e4eb71ae8e96 |
children | 28f43332ba12 |
line wrap: on
line source
#ifndef MAILBOX_LIST_SUBSCRIPTIONS_H #define MAILBOX_LIST_SUBSCRIPTIONS_H enum mailbox_info_flags; enum mailbox_list_iter_flags; struct mailbox_tree_context; struct mailbox_list_iterate_context; int mailbox_list_subscriptions_refresh(struct mailbox_list *list); /* Set MAILBOX_SUBSCRIBED and MAILBOX_CHILD_SUBSCRIBED flags, clearing them if they already are there when they shouldn't. */ void mailbox_list_set_subscription_flags(struct mailbox_list *list, const char *vname, enum mailbox_info_flags *flags); /* Add subscriptions matching the iteration to the given tree */ void mailbox_list_subscriptions_fill(struct mailbox_list_iterate_context *ctx, struct mailbox_tree_context *tree); /* Iterate through subscriptions, call mailbox_list.get_mailbox_flags() if necessary for mailboxes to get their flags. */ struct mailbox_list_iterate_context * mailbox_list_subscriptions_iter_init(struct mailbox_list *list, const char *const *patterns, enum mailbox_list_iter_flags flags); const struct mailbox_info * mailbox_list_subscriptions_iter_next(struct mailbox_list_iterate_context *ctx); int mailbox_list_subscriptions_iter_deinit(struct mailbox_list_iterate_context *ctx); #endif