iter             1406 mod_freetdm/mod_freetdm.c 	ftdm_iterator_t *iter = NULL;
iter             1519 mod_freetdm/mod_freetdm.c 	iter = ftdm_channel_get_var_iterator(sigmsg->channel, NULL);
iter             1520 mod_freetdm/mod_freetdm.c 	for (curr = iter ; curr; curr = ftdm_iterator_next(curr)) {
iter             1525 mod_freetdm/mod_freetdm.c 	ftdm_iterator_free(iter);
iter             3600 src/ftdm_io.c  static ftdm_iterator_t *get_iterator(ftdm_iterator_type_t type, ftdm_iterator_t *iter)
iter             3603 src/ftdm_io.c  	if (iter) {
iter             3604 src/ftdm_io.c  		if (iter->type != type) {
iter             3608 src/ftdm_io.c  		allocated = iter->allocated;
iter             3609 src/ftdm_io.c  		memset(iter, 0, sizeof(*iter));
iter             3610 src/ftdm_io.c  		iter->type = type;
iter             3611 src/ftdm_io.c  		iter->allocated = allocated;
iter             3612 src/ftdm_io.c  		return iter;
iter             3615 src/ftdm_io.c  	iter = ftdm_calloc(1, sizeof(*iter));
iter             3616 src/ftdm_io.c  	if (!iter) {
iter             3619 src/ftdm_io.c  	iter->type = type;
iter             3620 src/ftdm_io.c  	iter->allocated = 1;
iter             3621 src/ftdm_io.c  	return iter;
iter             3624 src/ftdm_io.c  FT_DECLARE(ftdm_iterator_t *) ftdm_channel_get_var_iterator(const ftdm_channel_t *ftdmchan, ftdm_iterator_t *iter)
iter             3636 src/ftdm_io.c  	if (!(iter = get_iterator(FTDM_ITERATOR_VARS, iter))) {
iter             3639 src/ftdm_io.c  	iter->pvt.hashiter = hashiter;
iter             3640 src/ftdm_io.c  	return iter;
iter             3643 src/ftdm_io.c  FT_DECLARE(ftdm_iterator_t *) ftdm_span_get_chan_iterator(const ftdm_span_t *span, ftdm_iterator_t *iter)
iter             3645 src/ftdm_io.c  	if (!(iter = get_iterator(FTDM_ITERATOR_CHANS, iter))) {
iter             3648 src/ftdm_io.c  	iter->pvt.chaniter.index = 1;
iter             3649 src/ftdm_io.c  	iter->pvt.chaniter.span = span;
iter             3650 src/ftdm_io.c  	return iter;
iter             3653 src/ftdm_io.c  FT_DECLARE(ftdm_status_t) ftdm_channel_get_current_var(ftdm_iterator_t *iter, const char **var_name, const char **var_val)
iter             3661 src/ftdm_io.c  	ftdm_assert_return(iter && (iter->type == FTDM_ITERATOR_VARS) && iter->pvt.hashiter, FTDM_FAIL, "Cannot get variable from invalid iterator!\n");
iter             3663 src/ftdm_io.c  	hashtable_this(iter->pvt.hashiter, &key, NULL, &val);
iter             3671 src/ftdm_io.c  FT_DECLARE(ftdm_iterator_t *) ftdm_iterator_next(ftdm_iterator_t *iter)
iter             3673 src/ftdm_io.c  	ftdm_assert_return(iter && iter->type, NULL, "Invalid iterator\n");
iter             3675 src/ftdm_io.c  	switch (iter->type) {
iter             3677 src/ftdm_io.c  		if (!iter->pvt.hashiter) {
iter             3680 src/ftdm_io.c  		iter->pvt.hashiter = hashtable_next(iter->pvt.hashiter);
iter             3681 src/ftdm_io.c  		if (!iter->pvt.hashiter) {
iter             3684 src/ftdm_io.c  		return iter;
iter             3686 src/ftdm_io.c  		ftdm_assert_return(iter->pvt.chaniter.index, NULL, "channel iterator index cannot be zero!\n");
iter             3687 src/ftdm_io.c  		if (iter->pvt.chaniter.index == iter->pvt.chaniter.span->chan_count) {
iter             3690 src/ftdm_io.c  		iter->pvt.chaniter.index++;
iter             3691 src/ftdm_io.c  		return iter;
iter             3700 src/ftdm_io.c  FT_DECLARE(void *) ftdm_iterator_current(ftdm_iterator_t *iter)
iter             3705 src/ftdm_io.c  	ftdm_assert_return(iter && iter->type, NULL, "Invalid iterator\n");
iter             3707 src/ftdm_io.c  	switch (iter->type) {
iter             3709 src/ftdm_io.c  		hashtable_this(iter->pvt.hashiter, &key, NULL, &val);
iter             3713 src/ftdm_io.c  		ftdm_assert_return(iter->pvt.chaniter.index, NULL, "channel iterator index cannot be zero!\n");
iter             3714 src/ftdm_io.c  		ftdm_assert_return(iter->pvt.chaniter.index <= iter->pvt.chaniter.span->chan_count, NULL, "channel iterator index bigger than span chan count!\n");
iter             3715 src/ftdm_io.c  		return iter->pvt.chaniter.span->channels[iter->pvt.chaniter.index];
iter             3724 src/ftdm_io.c  FT_DECLARE(ftdm_status_t) ftdm_iterator_free(ftdm_iterator_t *iter)
iter             3727 src/ftdm_io.c  	if (!iter) {
iter             3731 src/ftdm_io.c  	if (!iter->allocated) {
iter             3732 src/ftdm_io.c  		memset(iter, 0, sizeof(*iter));
iter             3736 src/ftdm_io.c  	ftdm_assert_return(iter->type, FTDM_FAIL, "Cannot free invalid iterator\n");
iter             3737 src/ftdm_io.c  	ftdm_safe_free(iter);
iter             1038 src/include/freetdm.h FT_DECLARE(ftdm_iterator_t *) ftdm_channel_get_var_iterator(const ftdm_channel_t *ftdmchan, ftdm_iterator_t *iter);
iter             1044 src/include/freetdm.h FT_DECLARE(void *) ftdm_iterator_current(ftdm_iterator_t *iter);
iter             1047 src/include/freetdm.h FT_DECLARE(ftdm_status_t) ftdm_channel_get_current_var(ftdm_iterator_t *iter, const char **var_name, const char **var_val);
iter             1050 src/include/freetdm.h FT_DECLARE(ftdm_iterator_t *) ftdm_iterator_next(ftdm_iterator_t *iter);
iter             1055 src/include/freetdm.h FT_DECLARE(ftdm_status_t) ftdm_iterator_free(ftdm_iterator_t *iter);
iter             1164 src/include/freetdm.h FT_DECLARE(ftdm_iterator_t *) ftdm_span_get_chan_iterator(const ftdm_span_t *span, ftdm_iterator_t *iter);