diff -up dovecot-1.0.7/src/plugins/acl/acl-cache.c.CVE-2008-4577 dovecot-1.0.7/src/plugins/acl/acl-cache.c --- dovecot-1.0.7/src/plugins/acl/acl-cache.c.CVE-2008-4577 2007-10-28 02:09:24.000000000 +0200 +++ dovecot-1.0.7/src/plugins/acl/acl-cache.c 2008-10-29 11:42:22.686615449 +0100 @@ -373,10 +373,8 @@ acl_cache_my_current_rights_recalculate( 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]; } }