(send_dg): Recognize referral results and treat them as server errors.

This commit is contained in:
Ulrich Drepper 2005-07-08 06:49:08 +00:00
parent 6aeeeb9a09
commit 359bb2ef12

View File

@ -1008,11 +1008,19 @@ send_dg(res_state statp,
DprintQ(statp->options & RES_DEBUG,
(stdout, "server rejected query:\n"),
ans, (resplen > anssiz) ? anssiz : resplen);
next_ns:
res_nclose(statp);
/* don't retry if called from dig */
if (!statp->pfcode)
return (0);
}
if (anhp->rcode == NOERROR && anhp->ancount == 0
&& anhp->aa == 0 && anhp->ra == 0 && anhp->arcount == 0) {
DprintQ(statp->options & RES_DEBUG,
(stdout, "referred query:\n"),
ans, (resplen > anssiz) ? anssiz : resplen);
goto next_ns;
}
if (!(statp->options & RES_IGNTC) && anhp->tc) {
/*
* To get the rest of answer,