further 160914 fix: test for RD=1 and RA=0 also as suggested by ISC and for

ARCOUNT=0 as does glibc
This commit is contained in:
jvdias 2005-08-17 02:28:17 +00:00
parent 4206716ead
commit 9992df4335
1 changed files with 7 additions and 5 deletions

View File

@ -1,6 +1,6 @@
--- bind-9.3.1/bin/dig/dighost.c.next_server_on_referral 2005-07-07 13:19:29.000000000 -0400
+++ bind-9.3.1/bin/dig/dighost.c 2005-07-07 14:30:38.000000000 -0400
@@ -2765,7 +2765,15 @@
--- bind-9.3.1/bin/dig/dighost.c.next_server_on_referral 2005-08-16 16:27:33.000000000 -0400
+++ bind-9.3.1/bin/dig/dighost.c 2005-08-16 16:27:49.000000000 -0400
@@ -2765,7 +2765,17 @@
UNLOCK_LOOKUP;
return;
}
@ -9,7 +9,9 @@
+ &&( (msg->rcode == dns_rcode_servfail)
+ ||( (msg->rcode == dns_rcode_noerror)
+ &&(msg->counts[DNS_SECTION_ANSWER] == 0)
+ &&((msg->flags & (DNS_MESSAGEFLAG_AA | DNS_MESSAGEFLAG_RA)) == 0)
+ &&(msg->counts[DNS_SECTION_ADDITIONAL] == 0)
+ &&((msg->flags & DNS_MESSAGEFLAG_RD) == DNS_MESSAGEFLAG_RD)
+ &&((msg->flags & (DNS_MESSAGEFLAG_RA | DNS_MESSAGEFLAG_AA)) == 0)
+ )
+ )
+ )
@ -17,7 +19,7 @@
dig_query_t *next = ISC_LIST_NEXT(query, link);
if (l->current_query == query)
l->current_query = NULL;
@@ -2783,9 +2791,11 @@
@@ -2783,9 +2793,11 @@
*/
if ((ISC_LIST_HEAD(l->q) != query) ||
(ISC_LIST_NEXT(query, link) != NULL)) {