From: Markus Valentin Date: Thu, 1 Jul 2021 08:46:05 +0000 (+0200) Subject: acl: Ignore acls in acl_lookup_dict_rebuild_add_backend if ignore_acls is set X-Git-Tag: 2.3.16~19 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=604b879dd7b9be08ca630644646128fe0c01bf96;p=thirdparty%2Fdovecot%2Fcore.git acl: Ignore acls in acl_lookup_dict_rebuild_add_backend if ignore_acls is set In case an namespace has been configured to ignore ACLs also respect that when acl_lookup_dict_rebuild is called. Co-Authored-By: Vincent Brillault --- diff --git a/src/plugins/acl/acl-lookup-dict.c b/src/plugins/acl/acl-lookup-dict.c index 61d5fa8793..bd6182cae7 100644 --- a/src/plugins/acl/acl-lookup-dict.c +++ b/src/plugins/acl/acl-lookup-dict.c @@ -105,6 +105,7 @@ acl_rights_is_same_user(const struct acl_rights *right, struct mail_user *user) static int acl_lookup_dict_rebuild_add_backend(struct mail_namespace *ns, ARRAY_TYPE(const_string) *ids) { + struct acl_mailbox_list *alist = ACL_LIST_CONTEXT(ns->list); struct acl_backend *backend; struct acl_mailbox_list_context *ctx; struct acl_object *aclobj; @@ -115,7 +116,7 @@ static int acl_lookup_dict_rebuild_add_backend(struct mail_namespace *ns, int ret = 0; if ((ns->flags & NAMESPACE_FLAG_NOACL) != 0 || ns->owner == NULL || - ACL_LIST_CONTEXT(ns->list) == NULL) + alist == NULL || alist->ignore_acls) return 0; id = t_str_new(128);