X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=adns.git;a=blobdiff_plain;f=src%2Fquery.c;h=640d10ceeee8d25144f615ceb107a728c726dfd1;hp=7eb322d996ba87e85e61815175a087672f0128c3;hb=e563872a2a813d371753ad7efeb2c25808664a01;hpb=3d1ae6ea11f3fa0f7eda890c7c81dc6a1ba76a95 diff --git a/src/query.c b/src/query.c index 7eb322d..640d10c 100644 --- a/src/query.c +++ b/src/query.c @@ -68,9 +68,9 @@ static adns_query query_alloc(adns_state ads, const typeinfo *typei, qu->id= 0; qu->flags= flags; - qu->udpretries= 0; + qu->retries= 0; qu->udpnextserver= 0; - qu->udpsent= qu->tcpfailed= 0; + qu->udpsent= 0; timerclear(&qu->timeout); qu->expires= now.tv_sec + MAXTTLBELIEVE; @@ -195,7 +195,7 @@ static int save_owner(adns_query qu, const char *owner, int ol) { int adns_submit(adns_state ads, const char *owner, adns_rrtype type, - int flags, + adns_queryflags flags, void *context, adns_query *query_r) { int r, ol, ndots; @@ -262,7 +262,7 @@ int adns_submit(adns_state ads, int adns_submit_reverse(adns_state ads, const struct sockaddr *addr, adns_rrtype type, - int flags, + adns_queryflags flags, void *context, adns_query *query_r) { const unsigned char *iaddr; @@ -283,7 +283,7 @@ int adns_submit_reverse(adns_state ads, int adns_synchronous(adns_state ads, const char *owner, adns_rrtype type, - int flags, + adns_queryflags flags, adns_answer **answer_r) { adns_query qu; int r; @@ -399,10 +399,13 @@ void adns_cancel(adns_query qu) { adns__consistency(ads,qu,cc_entex); if (qu->parent) LIST_UNLINK_PART(qu->parent->children,qu,siblings.); switch (qu->state) { - case query_tosend: case query_tcpwait: case query_tcpsent: - LIST_UNLINK(ads->timew,qu); + case query_tosend: + LIST_UNLINK(ads->udpw,qu); break; - case query_child: + case query_tcpw: + LIST_UNLINK(ads->tcpw,qu); + break; + case query_childw: LIST_UNLINK(ads->childw,qu); break; case query_done: