From: Timo Sirainen Date: Mon, 8 Sep 2008 13:56:43 +0000 (+0300) Subject: ACLs: Negative rights were actually treated as positive rights. X-Git-Tag: 1.2.alpha2~71 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=9b84118c4dc1aa6acc76e77d8e23348870afb277;p=thirdparty%2Fdovecot%2Fcore.git ACLs: Negative rights were actually treated as positive rights. --HG-- branch : HEAD --- diff --git a/src/plugins/acl/acl-cache.c b/src/plugins/acl/acl-cache.c index 8675a19453..8d74dc706f 100644 --- a/src/plugins/acl/acl-cache.c +++ b/src/plugins/acl/acl-cache.c @@ -387,10 +387,8 @@ acl_cache_my_current_rights_recalculate(struct acl_object_cache *obj_cache) rights. */ right_size = obj_cache->my_neg_rights[i]->size; p = buffer_get_space_unsafe(bitmask, 0, right_size); - for (j = 0; j < right_size; j++) { - p[j] |= - obj_cache->my_neg_rights[i]->mask[j]; - } + for (j = 0; j < right_size; j++) + p[j] &= ~obj_cache->my_neg_rights[i]->mask[j]; } }