new helper: iterate_fd()