X-Git-Url: https://git.distorted.org.uk/~mdw/adns/blobdiff_plain/8837244370251f16e8f41097d4cbe5ef0058038c..a6536d8becc65c37fbeab7bc0793c6dd55bea977:/src/reply.c diff --git a/src/reply.c b/src/reply.c index c0772b9..9d11607 100644 --- a/src/reply.c +++ b/src/reply.c @@ -39,6 +39,7 @@ void adns__procdgram(adns_state ads, const byte *dgram, int dglen, adns_status st; vbuf tempvb; byte *newquery, *rrsdata; + parseinfo pai; if (dglentypei; cbyte= anstart; rrsdata= qu->answer->rrs.bytes; - - nrrs= 0; - for (rri=0; rriads; + pai.qu= qu; + pai.serv= serv; + pai.dgram= dgram; + pai.dglen= dglen; + pai.nsstart= nsstart; + pai.nscount= nscount; + pai.arcount= arcount; + pai.now= now; + + for (rri=0, nrrs=0; rritypei->type & adns__rrt_typemask) || !ownermatched) continue; - st= typei->parse(qu,serv, dgram,dglen, rdstart,rdstart+rdlength, - nsstart,&arstart, rrsdata+nrrs*typei->rrsz); + st= typei->parse(&pai, rdstart,rdstart+rdlength, rrsdata+nrrs*typei->rrsz); if (st) { adns__query_fail(qu,st); return; } if (rdstart==-1) goto x_truncated; nrrs++;