comparison src/plugins/acl/acl-lookup-dict.c @ 9434:e374a365521d HEAD

Initial commit for making mail_storage:mailbox_list to be from 1:1 to n:n. This will allow namespaces to share the same storage and a single namespace to have multiple storages (multiple mailbox formats). Neither works currently, and this commit probably breaks some things.
author Timo Sirainen <tss@iki.fi>
date Tue, 02 Jun 2009 22:30:28 -0400
parents e4429faabf59
children 0059b2381024
comparison
equal deleted inserted replaced
9433:438491c166cb 9434:e374a365521d
102 102
103 if ((ns->flags & NAMESPACE_FLAG_NOACL) != 0 || ns->owner == NULL) 103 if ((ns->flags & NAMESPACE_FLAG_NOACL) != 0 || ns->owner == NULL)
104 return 0; 104 return 0;
105 105
106 id = t_str_new(128); 106 id = t_str_new(128);
107 backend = acl_storage_get_backend(ns->storage); 107 backend = acl_mailbox_list_get_backend(ns->list);
108 ctx = acl_backend_nonowner_lookups_iter_init(backend); 108 ctx = acl_backend_nonowner_lookups_iter_init(backend);
109 while ((ret = acl_backend_nonowner_lookups_iter_next(ctx, &name)) > 0) { 109 while ((ret = acl_backend_nonowner_lookups_iter_next(ctx, &name)) > 0) {
110 aclobj = acl_object_init_from_name(backend, ns->storage, name); 110 aclobj = acl_object_init_from_name(backend, name);
111 111
112 iter = acl_object_list_init(aclobj); 112 iter = acl_object_list_init(aclobj);
113 while ((ret = acl_object_list_next(iter, &rights)) > 0) { 113 while ((ret = acl_object_list_next(iter, &rights)) > 0) {
114 if (acl_rights_has_nonowner_lookup_changes(&rights)) { 114 if (acl_rights_has_nonowner_lookup_changes(&rights)) {
115 str_truncate(id, 0); 115 str_truncate(id, 0);