813 |
|
|
814 |
|
if ((header->rcode != NO_ERRORS) || (header->ancount == 0)) |
815 |
|
{ |
816 |
< |
if ((SERVFAIL == header->rcode) || (NXDOMAIN == header->rcode)) |
817 |
< |
{ |
818 |
< |
/* |
819 |
< |
* If a bad error was returned, we stop here and dont send |
820 |
< |
* send any more (no retries granted). |
821 |
< |
*/ |
822 |
< |
(*request->query->callback)(request->query->ptr, NULL); |
823 |
< |
rem_request(request); |
824 |
< |
} |
825 |
< |
else |
816 |
> |
if (NXDOMAIN == header->rcode) |
817 |
|
{ |
818 |
|
/* |
819 |
|
* If we havent already tried this, and we're looking up AAAA, try A |
820 |
|
* now |
821 |
|
*/ |
831 |
– |
|
822 |
|
#ifdef IPV6 |
823 |
|
if (request->state == REQ_AAAA && request->type == T_AAAA) |
824 |
|
{ |
830 |
|
{ |
831 |
|
request->state = REQ_INT; |
832 |
|
request->timeout += 4; |
833 |
< |
request->retries--; |
833 |
> |
request->retries--; |
834 |
|
resend_query(request); |
835 |
|
} |
836 |
+ |
else |
837 |
|
#endif |
838 |
+ |
{ |
839 |
+ |
/* |
840 |
+ |
* If a bad error was returned, stop here and don't |
841 |
+ |
* send any more (no retries granted). |
842 |
+ |
*/ |
843 |
+ |
(*request->query->callback)(request->query->ptr, NULL); |
844 |
+ |
rem_request(request); |
845 |
+ |
} |
846 |
+ |
return; |
847 |
|
} |
848 |
– |
|
849 |
– |
return; |
848 |
|
} |
849 |
|
/* |
850 |
|
* If this fails there was an error decoding the received packet, |