X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~mdw/git/adns/blobdiff_plain/aa1d71950135594db944292a859b4ef81ed192fa..8f3b71b03532e90c147ef21f36a876b093b0ef3b:/client/adnshost.h diff --git a/client/adnshost.h b/client/adnshost.h index 3e93ca7..919a758 100644 --- a/client/adnshost.h +++ b/client/adnshost.h @@ -33,6 +33,7 @@ #include #include #include +#include #include #include "config.h" @@ -75,13 +76,23 @@ extern optfunc of_help, of_type, of_asynch_id, of_cancel_id; const struct optioninfo *opt_findl(const char *opt); const struct optioninfo *opt_finds(const char **optp); -void opt_do(const struct optioninfo *oip, const char *arg); +void opt_do(const struct optioninfo *oip, const char *arg, int invert); /* declarations related to query processing */ +struct query_node { + struct query_node *next, *back; + struct perqueryflags_remember pqfr; + char *id; + adns_query qu; +}; + extern adns_state ads; +extern struct outstanding_list { struct query_node *head, *tail; } outstanding; -void domain_do(const char *domain); +void ensure_adns_init(void); +void query_do(const char *domain); +void query_done(struct query_node *qun, adns_answer *answer); void of_asynch_id(const struct optioninfo *oi, const char *arg); void of_cancel_id(const struct optioninfo *oi, const char *arg); @@ -90,8 +101,12 @@ void of_cancel_id(const struct optioninfo *oi, const char *arg); void sysfail(const char *what, int errnoval) NONRETURNING; void usageerr(const char *what, ...) NONRETURNPRINTFFORMAT(1,2); +void outerr(void) NONRETURNING; +void setnonblock(int fd, int nonblock); void *xmalloc(size_t sz); char *xstrsave(const char *str); +extern int rcode; + #endif