* Queries in state tcpw/tcpw have been sent (or are in the to-send buffer)
* iff the tcp connection is in state server_ok.
*
* Queries in state tcpw/tcpw have been sent (or are in the to-send buffer)
* iff the tcp connection is in state server_ok.
*
* +------------------------+
* START -----> | tosend/NONE |
* +------------------------+
* +------------------------+
* START -----> | tosend/NONE |
* +------------------------+
- struct query_queue udpw, tcpw, childw, output;
+ struct query_queue udpw, tcpw, childw, output, intdone;
void adns__query_done(adns_query qu);
void adns__query_fail(adns_query qu, adns_status stat);
void adns__cancel_children(adns_query qu);
void adns__returning(adns_state ads, adns_query qu);
/* Must be called before returning from adns any time that we have
void adns__query_done(adns_query qu);
void adns__query_fail(adns_query qu, adns_status stat);
void adns__cancel_children(adns_query qu);
void adns__returning(adns_state ads, adns_query qu);
/* Must be called before returning from adns any time that we have
- * progressed (including made, finished or destroyed) queries. */
+ * progressed (including made, finished or destroyed) queries.
+ *
+ * Might reenter adns via internal query callbacks, so
+ * external-faciing functions which call adns__returning should
+ * normally be avoided in internal code. */