shared-storage.c revision 5b82f3b2f544cf891a390083f1bcf60409be20b8
7ef3553585e556f35d5919589cfdc1de3329e4bbTimo Sirainen/* Copyright (c) 2008-2016 Dovecot authors, see the included COPYING file */
2753f93e5d9cd5fbd773540de3772d182fcced5eStephan Boschstatic struct mail_storage *shared_storage_alloc(void)
2753f93e5d9cd5fbd773540de3772d182fcced5eStephan Bosch pool = pool_alloconly_create("shared storage", 1024);
2753f93e5d9cd5fbd773540de3772d182fcced5eStephan Bosch storage = p_new(pool, struct shared_storage, 1);
2753f93e5d9cd5fbd773540de3772d182fcced5eStephan Boschshared_storage_create(struct mail_storage *_storage, struct mail_namespace *ns,
2753f93e5d9cd5fbd773540de3772d182fcced5eStephan Bosch const char **error_r)
2753f93e5d9cd5fbd773540de3772d182fcced5eStephan Bosch struct shared_storage *storage = (struct shared_storage *)_storage;
2753f93e5d9cd5fbd773540de3772d182fcced5eStephan Bosch const char *driver, *p;
c3c07d6527ad28c8546cbbf84c257d178e23c184Timo Sirainen /* location must begin with the actual mailbox driver */
7ef3553585e556f35d5919589cfdc1de3329e4bbTimo Sirainen *error_r = "Shared mailbox location not prefixed with driver";
if (!have_username) {
NAMESPACE_FLAG_LIST_CHILDREN)) != 0) {
const char *path;
return TRUE;
const char **_name)
int ret;
if (*p != *name)
p++; name++;
i_unreached();
domain++;
ret = 0;
if (ret > 0 &&
if (ret <= 0) {
NULL,
NULL,
NULL,