Home | History | Annotate | Download | only in blkid

Lines Matching refs:iter

115 	blkid_dev_iterate	iter;
117 iter = malloc(sizeof(struct blkid_struct_dev_iterate));
118 if (iter) {
119 iter->magic = DEV_ITERATE_MAGIC;
120 iter->cache = cache;
121 iter->p = cache->bic_devs.next;
122 iter->search_type = 0;
123 iter->search_value = 0;
125 return (iter);
128 extern int blkid_dev_set_search(blkid_dev_iterate iter,
133 if (!iter || iter->magic != DEV_ITERATE_MAGIC || !search_type ||
145 free(iter->search_type);
146 free(iter->search_value);
147 iter->search_type = new_type;
148 iter->search_value = new_value;
155 extern int blkid_dev_next(blkid_dev_iterate iter,
161 if (!iter || iter->magic != DEV_ITERATE_MAGIC)
163 while (iter->p != &iter->cache->bic_devs) {
164 dev = list_entry(iter->p, struct blkid_struct_dev, bid_devs);
165 iter->p = iter->p->next;
166 if (iter->search_type &&
167 !blkid_dev_has_tag(dev, iter->search_type,
168 iter->search_value))
176 extern void blkid_dev_iterate_end(blkid_dev_iterate iter)
178 if (!iter || iter->magic != DEV_ITERATE_MAGIC)
180 iter->magic = 0;
181 free(iter);
201 blkid_dev_iterate iter;
240 iter = blkid_dev_iterate_begin(cache);
242 blkid_dev_set_search(iter, search_type, search_value);
243 while (blkid_dev_next(iter, &dev) == 0) {
246 blkid_dev_iterate_end(iter);