+void adns__query_udp(adns_state ads, adns_query qu, struct timeval now);
+void adns__query_tcp(adns_state ads, adns_query qu, struct timeval now);
+adns_status adns__mkquery(adns_state ads, const char *owner, int ol, int id,
+ const typeinfo *typei, adns_queryflags flags);
+
+/* From reply.c: */
+
+void adns__procdgram(adns_state ads, const byte *dgram, int len,
+ int serv, struct timeval now);
+
+/* From types.c: */
+
+const typeinfo *adns__findtype(adns_rrtype type);
+
+/* From parse.c: */
+
+int vbuf__append_quoted1035(vbuf *vb, const byte *buf, int len);
+
+adns_status adns__get_label(const byte *dgram, int dglen, int *max_io,
+ int *cbyte_io, int *lablen_r, int *labstart_r,
+ int *namelen_io);
+adns_status adns__get_domain_perm(adns_state ads, adns_query qu, int serv,
+ const byte *dgram, int dglen,
+ int *cbyte_io, int max, int *domainstart_r);
+adns_status adns__get_domain_temp(adns_state ads, adns_query qu, int serv,
+ const byte *dgram, int dglen,
+ int *cbyte_io, int max, int *domainstart_r);
+adns_status adns__get_rr_temp(adns_state ads, adns_query qu, int serv,
+ const byte *dgram, int dglen, int *cbyte_io,
+ int *type_r, int *class_r, int *rdlen_r, int *rdstart_r,
+ const byte *eo_dgram, int eo_dglen, int eo_cbyte,
+ int *eo_matched_r);