The server metadata is always accessible. INBOX's ACLs aren't relevant,
even though internally for now we're using INBOX for storing the server
metadata.
return -1;
}
- /* server attribute */
+ /* Server attribute. It shouldn't depend on INBOX's ACLs,
+ so ignore them. */
*ns_r = mail_namespace_find_inbox(user->namespaces);
- *box_r = mailbox_alloc((*ns_r)->list, "INBOX", 0);
+ *box_r = mailbox_alloc((*ns_r)->list, "INBOX",
+ MAILBOX_FLAG_IGNORE_ACLS);
mctx->key = t_strconcat(MAILBOX_ATTRIBUTE_PREFIX_DOVECOT_PVT_SERVER,
mctx->key, NULL);
struct imap_metadata_transaction *imtrans;
ns = mail_namespace_find_inbox(user->namespaces);
- box = mailbox_alloc(ns->list, "INBOX", 0);
+ /* Server metadata shouldn't depend on INBOX's ACLs, so ignore them. */
+ box = mailbox_alloc(ns->list, "INBOX", MAILBOX_FLAG_IGNORE_ACLS);
mailbox_set_reason(box, "Server METADATA");
imtrans = imap_metadata_transaction_begin(box);
imtrans->server = TRUE;