mail-storage.c revision d81131d3bbb4f0befb62a661d1785cf8c84a17e2
273e421813f295d65aab512f508e8fb575d997d4gouldtj/* Copyright (c) 2002-2012 Dovecot authors, see the included COPYING file */
273e421813f295d65aab512f508e8fb575d997d4gouldtjextern struct mail_search_register *mail_search_register_imap;
273e421813f295d65aab512f508e8fb575d997d4gouldtjextern struct mail_search_register *mail_search_register_human;
273e421813f295d65aab512f508e8fb575d997d4gouldtjstruct mail_storage_module_register mail_storage_module_register = { 0 };
273e421813f295d65aab512f508e8fb575d997d4gouldtjstruct mail_module_register mail_module_register = { 0 };
273e421813f295d65aab512f508e8fb575d997d4gouldtjstruct mail_storage_mail_index_module mail_storage_mail_index_module =
273e421813f295d65aab512f508e8fb575d997d4gouldtj mail_search_register_deinit(&mail_search_register_human);
273e421813f295d65aab512f508e8fb575d997d4gouldtj mail_search_register_deinit(&mail_search_register_imap);
unsigned int i, count;
for (i = 0; i < count; i++) {
unsigned int i, count;
for (i = 0; i < count; i++) {
return classes[i];
return NULL;
static struct mail_storage *
unsigned int i, count;
for (i = 0; i < count; i++) {
return classes[i];
return NULL;
p = *data;
while (i_isalnum(*p)) p++;
static struct mail_storage *
const char *home;
return NULL;
return NULL;
return storage_class;
return storage_class;
return NULL;
const char **error_r)
} else if (!autocreate) {
bool autocreate;
int ret;
if (ret == 0) {
error_r);
return FALSE;
return FALSE;
return FALSE;
return TRUE;
static struct mail_storage *
return storage;
return NULL;
error_r) < 0)
error_r);
T_BEGIN {
} T_END;
const char *str;
const char *fmt, ...)
const char *str;
const struct mail_storage_settings *
void *context)
return error;
const char *error_string;
return FALSE;
return FALSE;
return TRUE;
const struct mailbox_settings *
return NULL;
return NULL;
return *box_set;
return NULL;
T_BEGIN {
} T_END;
return box;
const char *vname;
&metadata) < 0) {
return box;
return box;
const char *name)
NAMESPACE_FLAG_LIST_CHILDREN)) == 0)
return TRUE;
return FALSE;
return TRUE;
case MAIL_ERROR_NOTFOUND:
vname++;
if (*p == list_sep) {
list_sep));
const char *errstr;
MAILBOX_SET_AUTO_SUBSCRIBE) == 0) {
int ret;
return ret;
int ret;
case MAIL_ERROR_NOTFOUND:
MAIL_STORAGE_CLASS_FLAG_OPEN_STREAMS) == 0) {
T_BEGIN {
} T_END;
} T_END;
if (ret < 0) {
return FALSE;
return FALSE;
return FALSE;
return TRUE;
bool directory)
int ret;
if (directory ||
return ret;
int ret;
if (ret < 0)
if (del)
int ret;
return ret;
int ret;
return ret;
const char **error_r)
return TRUE;
return FALSE;
return FALSE;
return TRUE;
const char **error_r)
return FALSE;
return FALSE;
return FALSE;
return TRUE;
bool rename_children)
struct mail_namespace *
return FALSE;
i_unreached();
struct mailbox_sync_context *
T_BEGIN {
} T_END;
return ctx;
const char *errormsg;
int ret;
if (ret == 0)
return ret;
struct mail_search_context *
int ret;
return ret;
bool tryagain;
if (!tryagain)
return FALSE;
return TRUE;
return FALSE;
return TRUE;
int ret;
if (ret < 0)
return ret;
struct mailbox_transaction_context *
return trans;
int ret;
return ret;
int ret;
T_BEGIN {
} T_END;
return ret;
struct mailbox *
return t->box;
struct mail_save_context *
return ctx;
const char *const *keywords_list;
const char *envelope)
unsigned int order)
int ret;
if (ret < 0) {
int ret;
return ret;
struct mailbox_transaction_context *
int ret;
return ret;
const char *path;
int *fd_r)
int fd;
unsigned int secs)