const char *acl_rights_get_id(const struct acl_rights *right) { string_t *str = t_str_new(32); acl_rights_write_id(str, right); return str_c(str); }
static const char * acl_attribute_iter_next_acl(struct acl_mailbox_attribute_iter *aiter) { struct acl_rights rights; int ret; while ((ret = acl_object_list_next(aiter->acl_iter, &rights)) > 0) { if (rights.global) continue; str_truncate(aiter->acl_name, strlen(MAILBOX_ATTRIBUTE_PREFIX_ACL)); acl_rights_write_id(aiter->acl_name, &rights); return str_c(aiter->acl_name); } if (ret < 0) { mail_storage_set_internal_error(aiter->iter.box->storage); aiter->failed = TRUE; return NULL; } acl_object_list_deinit(&aiter->acl_iter); return NULL; }