mailbox-list-private.h revision a91bd6256b33729531c33ff8bc66ee1ae95840f9
30d2f45dd260208f0fb882dde134a249318524b9Lubos Kosco#define MAILBOX_LIST_NAME_MAILDIRPLUSPLUS "maildir++"
30d2f45dd260208f0fb882dde134a249318524b9Lubos Kosco#define MAILBOX_LOG_FILE_NAME "dovecot.mailbox.log"
30d2f45dd260208f0fb882dde134a249318524b9Lubos Kosco (((flags) & (MAILBOX_SELECT | MAILBOX_NOSELECT | \
30d2f45dd260208f0fb882dde134a249318524b9Lubos Kosco /* Creating a mailbox */
14a41f02433890d19b2f871156271e3388cd0845Jens Elkner /* Create a \Noselect or a mailbox */
14a41f02433890d19b2f871156271e3388cd0845Jens Elkner /* Create a \Noselect or fail */
d2b27f3d647af6fca607f14cb9296cc61c64b5b7Knut Anders Hatlen void (*deinit)(struct mailbox_list *list);
14a41f02433890d19b2f871156271e3388cd0845Jens Elkner int (*get_storage)(struct mailbox_list **list, const char **name,
14a41f02433890d19b2f871156271e3388cd0845Jens Elkner bool (*is_valid_pattern)(struct mailbox_list *list,
14a41f02433890d19b2f871156271e3388cd0845Jens Elkner const char *pattern);
14a41f02433890d19b2f871156271e3388cd0845Jens Elkner bool (*is_valid_existing_name)(struct mailbox_list *list,
14a41f02433890d19b2f871156271e3388cd0845Jens Elkner const char *name);
14a41f02433890d19b2f871156271e3388cd0845Jens Elkner bool (*is_valid_create_name)(struct mailbox_list *list,
14a41f02433890d19b2f871156271e3388cd0845Jens Elkner const char *name);
14a41f02433890d19b2f871156271e3388cd0845Jens Elkner const char *(*get_path)(struct mailbox_list *list, const char *name,
14a41f02433890d19b2f871156271e3388cd0845Jens Elkner int (*get_mailbox_name_status)(struct mailbox_list *list,
14a41f02433890d19b2f871156271e3388cd0845Jens Elkner const char *name,
14a41f02433890d19b2f871156271e3388cd0845Jens Elkner const char *(*get_temp_prefix)(struct mailbox_list *list, bool global);
14a41f02433890d19b2f871156271e3388cd0845Jens Elkner const char *(*join_refpattern)(struct mailbox_list *list,
14a41f02433890d19b2f871156271e3388cd0845Jens Elkner const char *const *patterns,
14a41f02433890d19b2f871156271e3388cd0845Jens Elkner const struct mailbox_info *
14a41f02433890d19b2f871156271e3388cd0845Jens Elkner (*iter_next)(struct mailbox_list_iterate_context *ctx);
14a41f02433890d19b2f871156271e3388cd0845Jens Elkner int (*iter_deinit)(struct mailbox_list_iterate_context *ctx);
30d2f45dd260208f0fb882dde134a249318524b9Lubos Kosco int (*get_mailbox_flags)(struct mailbox_list *list,
14a41f02433890d19b2f871156271e3388cd0845Jens Elkner /* Returns TRUE if name is mailbox's internal file/directory.
14a41f02433890d19b2f871156271e3388cd0845Jens Elkner If it does, mailbox deletion assumes it can safely delete it. */
9e84bb8ea80d12f1495640752b10ecbdabfe8a3aKnut Anders Hatlen bool (*is_internal_name)(struct mailbox_list *list, const char *name);
14a41f02433890d19b2f871156271e3388cd0845Jens Elkner int (*set_subscribed)(struct mailbox_list *list,
14a41f02433890d19b2f871156271e3388cd0845Jens Elkner int (*create_mailbox_dir)(struct mailbox_list *list, const char *name,
bool rename_children);
struct mailbox_list_module_register {
unsigned int id;
union mailbox_list_module_context {
struct mailbox_list {
const char *name;
char hierarchy_sep;
const char *file_create_gid_origin;
char *error_string;
bool temporary_error;
struct mailbox_list_iterate_context {
bool failed;
struct mailbox_list_iter_update_context {
void mailbox_lists_init(void);
void mailbox_lists_deinit(void);
const char **error_r);
const char *name);
const char *name);
const char **name);
const char *name);