diff options
author | Ulrich Drepper <drepper@redhat.com> | 2009-07-26 12:16:24 -0700 |
---|---|---|
committer | Andreas Schwab <schwab@redhat.com> | 2009-07-29 11:19:39 +0200 |
commit | b1cd3047ad1b119e09f26d0408f5232281431e8d (patch) | |
tree | f72854f7e4ae17ce1c75cbdb38a943bfa38e8665 | |
parent | 87b8eeddb0972dc3cd7cbee1890cbc632dc38e40 (diff) |
Handle SERVFAIL, NOTIMP, REFUSED replies from DNS server better.
When doing IPv4+6 lookups we have to pass up the error record from
send_dg.
(cherry picked from commit e28b969b49811a30887e7a252ac1804a055fe297)
-rw-r--r-- | ChangeLog | 6 | ||||
-rw-r--r-- | resolv/res_send.c | 6 |
2 files changed, 7 insertions, 5 deletions
@@ -1,3 +1,9 @@ +2009-07-26 Ulrich Drepper <drepper@redhat.com> + + [BZ #10452] + * resolv/res_send.c (send_dg): Pass full SERVFAIL, NOTIMP, REFUSED + replies up. + 2009-07-16 Ulrich Drepper <drepper@redhat.com> * nscd/cache.c (cache_add): Use atomic_compare_and_exchange_bool_rel diff --git a/resolv/res_send.c b/resolv/res_send.c index 39c69da2bc..b7ec2adda5 100644 --- a/resolv/res_send.c +++ b/resolv/res_send.c @@ -1255,14 +1255,10 @@ send_dg(res_state statp, ? *thisanssiz : *thisresplen); if (recvresp1 || (buf2 != NULL && recvresp2)) - { - *resplen2 = 1; - return resplen; - } + return resplen; if (buf2 != NULL) { /* We are waiting for a possible second reply. */ - resplen = 1; if (hp->id == anhp->id) recvresp1 = 1; else |