Author: Diane Bruce <db@db.net> (by way of Vampire- <vamposdecampos@gmail.com>)
[ircu2.10.12-pk.git] / ircd / ircd_res.c
index 0996822dda96294393126a619c0652d3ef05362f..6467abaa4e942b36407a7aac2e0244f7dd1410e9 100644 (file)
@@ -788,7 +788,15 @@ res_readreply(struct Event *ev)
   if ((header->rcode != NO_ERRORS) || (header->ancount == 0))
   {
     if (SERVFAIL == header->rcode)
-      resend_query(request);
+    {
+        /*
+         * If a bad error was returned, we stop here and don't send
+         * send any more (no retries granted).
+         */
+        Debug((DEBUG_DNS, "Request %p has bad response (state %d type %d rcode %d)", request, request->state, request->type, header->rcode));
+        (*request->callback)(request->callback_ctx, NULL, NULL);
+       rem_request(request);
+    }
     else
     {
       /*
@@ -808,16 +816,6 @@ res_readreply(struct Event *ev)
         request->timeout += feature_int(FEAT_IRCD_RES_TIMEOUT);
         resend_query(request);
       }
-      else
-      {
-        /*
-         * If a bad error was returned, we stop here and don't send
-         * send any more (no retries granted).
-         */
-        Debug((DEBUG_DNS, "Request %p has bad response (state %d type %d rcode %d)", request, request->state, request->type, header->rcode));
-        (*request->callback)(request->callback_ctx, NULL, NULL);
-       rem_request(request);
-      }
     }
 
     return;