chiark / gitweb /
src/types.c (icb_hostaddr): Report correct output status and address count.
authorMark Wooding <mdw@distorted.org.uk>
Wed, 14 May 2014 00:14:08 +0000 (01:14 +0100)
committerMark Wooding <mdw@distorted.org.uk>
Wed, 14 May 2014 00:14:08 +0000 (01:14 +0100)
src/types.c

index 11f9fd4d7f10fb1033dbcee1eddb78fc5bf627a5..66415a3941c0485ff32603a9782915e60fd769be 100644 (file)
@@ -854,7 +854,6 @@ static void icb_hostaddr(adns_query parent, adns_query child) {
   size_t addrsz = addr_rrsz(parent);
 
   st= cans->status == adns_s_nodata ? adns_s_ok : cans->status;
-  rrp->astatus= st;
 
   if (st) goto done;
   assert(addrsz == cans->rrsz);
@@ -872,9 +871,10 @@ static void icb_hostaddr(adns_query parent, adns_query child) {
 done:
   if (st) {
     adns__free_interim(parent, rrp->addrs);
-    rrp->naddrs= (st>0 && st<=adns_s_max_tempfail) ? -1 : cans->nrrs;
+    rrp->naddrs= (st>0 && st<=adns_s_max_tempfail) ? -1 : 0;
   }
 
+  rrp->astatus= st;
   if (parent->children.head) {
     LIST_LINK_TAIL(ads->childw,parent);
   } else {