shared-storage.c revision fedb7a111ba2102edce8e55a1ba77cf907c6add9
1N/A/* Copyright (c) 2008-2013 Dovecot authors, see the included COPYING file */ /* location must begin with the actual mailbox driver */ *
error_r =
"Shared mailbox location not prefixed with driver";
*
error_r =
"Shared namespace prefix doesn't contain %";
else if (
key !=
'%' &&
key !=
'd')
*
error_r =
"Shared namespace prefix contains unknown variables";
*
error_r =
"Shared namespace prefix doesn't contain %u or %n";
*
error_r =
"Shared namespace prefix doesn't end with hierarchy separator";
/* truncate prefix after the above checks are done, so they can log the full prefix in error conditions */ /* user wasn't found. we'll still need to create the storage to avoid exposing which users exist and which don't. */ /* use a reachable but nonexistent path as the mail root directory */ /* we can't know if this exists */ {
'n',
NULL,
"username" },
/* we checked this already above */ /* trying to open <prefix>/<user> mailbox */ "Invalid namespace prefix %s vs %s",
/* successfully matched the name. */ /* no domain given, use ours (if we have one) */ "Empty username doesn't exist");
/* expand the namespace prefix and see if it already exists. this should normally happen only when the mailbox is being opened */ "Couldn't create namespace '%s' for user %s: %s",
/* we'll need to look up the user's home directory */ "Could not lookup home for user %s",
/* create the new namespace */ i_debug(
"shared: Tried to access mails of " /* We need to create a prefix="" namespace for the owner */ /* owner gets freed by namespace deinit */ /* owner gets freed by namespace deinit */ /* this user doesn't have a usable storage */ /* mark the shared namespace root as usable, since it now has /* flags are unset if we were using "auto" storage */