From: Ulrich Drepper Date: Fri, 8 Jul 2005 06:49:08 +0000 (+0000) Subject: (send_dg): Recognize referral results and treat them as server errors. X-Git-Tag: upstream/2.30~16589 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=359bb2ef12afbd059eadbed49a8919fd0dedde4f;p=external%2Fglibc.git (send_dg): Recognize referral results and treat them as server errors. --- diff --git a/resolv/res_send.c b/resolv/res_send.c index 1a53e5b..6f12b88 100644 --- a/resolv/res_send.c +++ b/resolv/res_send.c @@ -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,