X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=adns.git;a=blobdiff_plain;f=src%2Fadns.h;h=400ba9f466b68a26bc303475be1c1d738cf6392d;hp=9c011e59113d11994f7ef3090c55c0e967c72def;hb=a1d593db283023f2f7763df26389eb6a54b82d7f;hpb=259ed846555f2e28d324df90f42f5fe3627fa8b6 diff --git a/src/adns.h b/src/adns.h index 9c011e5..400ba9f 100644 --- a/src/adns.h +++ b/src/adns.h @@ -42,11 +42,13 @@ typedef enum { adns_if_debug= 0x0008, /* enable all output to stderr plus debug msgs */ adns_if_noautosys= 0x0010, /* do not make syscalls at every opportunity */ adns_if_eintr= 0x0020, /* allow _wait and _synchronous to return EINTR */ + adns_if_nosigpipe= 0x0040, /* applic has SIGPIPE set to SIG_IGN, do not protect */ } adns_initflags; typedef enum { adns_qf_search= 0x000001, /* use the searchlist */ adns_qf_usevc= 0x000002, /* use a virtual circuit (TCP connection) */ + adns_qf_owner= 0x000004, /* fill in the owner field in the answer */ adns_qf_quoteok_query= 0x000010, /* allow quote-requiring chars in query domain */ adns_qf_quoteok_cname= 0x000020, /* allow ... in CNAME we go via */ adns_qf_quoteok_anshost= 0x000040, /* allow ... in answers expected to be hostnames */ @@ -89,7 +91,7 @@ typedef enum { } adns_rrtype; -/* In queries without qtf_anyquote, all domains must have standard +/* In queries without qtf_quoteok_*, all domains must have standard * legal syntax. In queries _with_ qtf_anyquote, domains in the query * or response may contain any characters, quoted according to * RFC1035 5.1. On input to adns, the char* is a pointer to the @@ -194,6 +196,7 @@ typedef struct { typedef struct { adns_status status; char *cname; /* always NULL if query was for CNAME records */ + char *owner; /* only set if requested in query flags */ adns_rrtype type; /* guaranteed to be same as in query */ time_t expires; /* expiry time, defined only if _s_ok, nxdomain or nodata. NOT TTL! */ int nrrs, rrsz; @@ -269,7 +272,6 @@ int adns_wait(adns_state ads, adns_query *query_io, adns_answer **answer_r, void **context_r); -/* fixme: minor cache */ void adns_cancel(adns_query query);