Lines Matching refs:iter
5 #include "mailbox-list-iter.h"
19 struct mailbox_list_iterate_context *iter;
87 struct quota_mailbox_iter *iter;
89 iter = i_new(struct quota_mailbox_iter, 1);
90 iter->root = root;
91 iter->error = "";
92 return iter;
99 struct quota_mailbox_iter *iter = *_iter;
100 int ret = *iter->error != '\0' ? -1 : 0;
105 if (iter->iter != NULL) {
106 if (mailbox_list_iter_deinit(&iter->iter) < 0) {
109 iter->ns->prefix,
110 mailbox_list_get_last_internal_error(iter->ns->list, NULL));
116 *iter->error != '\0' && *error2 != '\0' ? " and " : "";
118 iter->error, separator, error2);
120 i_free(iter);
125 quota_mailbox_iter_next(struct quota_mailbox_iter *iter)
131 if (iter->iter == NULL) {
132 namespaces = array_get(&iter->root->quota->namespaces, &count);
134 if (iter->ns_idx >= count)
137 iter->ns = namespaces[iter->ns_idx++];
138 } while (!quota_root_is_namespace_visible(iter->root, iter->ns));
139 iter->iter = mailbox_list_iter_init(iter->ns->list, "*",
144 while ((info = mailbox_list_iter_next(iter->iter)) != NULL) {
149 if (mailbox_list_iter_deinit(&iter->iter) < 0) {
150 iter->error = t_strdup_printf(
152 iter->ns->prefix,
153 mailbox_list_get_last_internal_error(iter->ns->list, NULL));
155 if (iter->ns->prefix_len > 0 &&
156 (iter->ns->prefix_len != 6 ||
157 strncasecmp(iter->ns->prefix, "INBOX", 5) != 0)) {
159 iter->info.ns = iter->ns;
160 iter->info.vname = t_strndup(iter->ns->prefix,
161 iter->ns->prefix_len-1);
162 return &iter->info;
165 return quota_mailbox_iter_next(iter);
171 struct quota_mailbox_iter *iter;
181 iter = quota_mailbox_iter_begin(root);
182 while ((info = quota_mailbox_iter_next(iter)) != NULL) {
190 if (quota_mailbox_iter_deinit(&iter, &error2) < 0) {
341 struct quota_mailbox_iter *iter;
347 iter = quota_mailbox_iter_begin(root);
348 while ((info = quota_mailbox_iter_next(iter)) != NULL) {
355 if (quota_mailbox_iter_deinit(&iter, &error2) < 0)