X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=blobdiff_plain;ds=sidebyside;f=src%2Fquery.c;h=2b21da473dd2a6f404067112fbc79cfae5b72413;hb=b9de380c1e587b6c5828cb9de796746024946880;hp=8aef53282a4641c201c37c03c7a1ba8fca087a52;hpb=4353a5c47b202786905257e520fe570a570e67bc;p=adns.git diff --git a/src/query.c b/src/query.c index 8aef532..2b21da4 100644 --- a/src/query.c +++ b/src/query.c @@ -17,7 +17,8 @@ adns_status adns__mkquery(adns_state ads, const char *owner, int ol, int id, #define MKQUERY_ADDB(b) *rqp++= (b) #define MKQUERY_ADDW(w) (MKQUERY_ADDB(((w)>>8)&0x0ff), MKQUERY_ADDB((w)&0x0ff)) - if (!adns__vbuf_ensure(&ads->rqbuf,12+strlen(owner)+3)) return adns_s_nolocalmem; + if (!adns__vbuf_ensure(&ads->rqbuf,DNSHDRSIZE+strlen(owner)+1+5)) + return adns_s_nolocalmem; rqp= ads->rqbuf.buf; MKQUERY_ADDW(id); @@ -64,10 +65,10 @@ adns_status adns__mkquery(adns_state ads, const char *owner, int ol, int id, MKQUERY_ADDB(0); MKQUERY_ADDW(type & adns__rrt_typemask); /* QTYPE */ - MKQUERY_ADDW(1); /* QCLASS=IN */ + MKQUERY_ADDW(DNS_CLASS_IN); /* QCLASS=IN */ ads->rqbuf.used= rqp - ads->rqbuf.buf; - assert(ads->rqbuf.used < ads->rqbuf.avail); + assert(ads->rqbuf.used <= ads->rqbuf.avail); return adns_s_ok; }