]> git.ipfire.org Git - thirdparty/dovecot/core.git/commitdiff
quota: When matching mailbox names in quota rules, unalias namespaces first.
authorTimo Sirainen <tss@iki.fi>
Fri, 16 Sep 2011 09:40:19 +0000 (12:40 +0300)
committerTimo Sirainen <tss@iki.fi>
Fri, 16 Sep 2011 09:40:19 +0000 (12:40 +0300)
src/plugins/quota/quota.c

index e67a501820f8a320fd9895d7ca9e571c8b20f173..ba55bd254c6536ff339d5f59194b9be3d61d200d 100644 (file)
@@ -604,6 +604,8 @@ static int quota_root_get_rule_limits(struct quota_root *root,
           ignore any specific quota rules */
        enabled = bytes_limit != 0 || count_limit != 0;
 
+       (void)mail_namespace_find_unalias(root->quota->user->namespaces,
+                                         &mailbox_name);
        rule = enabled ? quota_root_rule_find(root->set, mailbox_name) : NULL;
        if (rule != NULL) {
                if (!rule->ignore) {
@@ -1093,6 +1095,9 @@ int quota_transaction_commit(struct quota_transaction_context **_ctx)
                ARRAY_DEFINE(warn_roots, struct quota_root *);
 
                mailbox_name = mailbox_get_vname(ctx->box);
+               (void)mail_namespace_find_unalias(
+                       ctx->box->storage->user->namespaces, &mailbox_name);
+
                roots = array_get(&ctx->quota->roots, &count);
                t_array_init(&warn_roots, count);
                for (i = 0; i < count; i++) {