]> git.ipfire.org Git - thirdparty/bind9.git/commitdiff
pullup:
authorAndreas Gustafsson <source@isc.org>
Tue, 12 Sep 2000 19:16:00 +0000 (19:16 +0000)
committerAndreas Gustafsson <source@isc.org>
Tue, 12 Sep 2000 19:16:00 +0000 (19:16 +0000)
 441.   [bug]           Nodes obscured by a DNAME were inaccessible even
                        when DNS_DBFIND_GLUEOK was set.

CHANGES
lib/dns/rbtdb.c

diff --git a/CHANGES b/CHANGES
index 9b3a9ae5c68bc5907a12577659b8ecab8cc9737c..bfbe6504c6240b2a5421138d7da4305f118ccb3b 100644 (file)
--- a/CHANGES
+++ b/CHANGES
@@ -1,6 +1,9 @@
  442.  [bug]           TSIG signed messages that did not match any view
                        crashed the server. [RT #290]
 
+ 441.  [bug]           Nodes obscured by a DNAME were inaccessible even
+                       when DNS_DBFIND_GLUEOK was set.
+
  436.  [bug]           If recvmsg() returned EHOSTUNREACH or ENETUNREACH,
                        which sometimes happens on Linux, named would enter
                        a busy loop.  Also, unexpected socket errors were
index 4df1b66032c685f4a16ce99166d816921f1bb13c..1891a5835e022c96f695f543805d10d648e8107a 100644 (file)
@@ -15,7 +15,7 @@
  * SOFTWARE.
  */
 
-/* $Id: rbtdb.c,v 1.108.2.2 2000/09/12 19:14:20 gson Exp $ */
+/* $Id: rbtdb.c,v 1.108.2.3 2000/09/12 19:16:00 gson Exp $ */
 
 /*
  * Principal Author: Bob Halley
@@ -1083,24 +1083,11 @@ zone_zonecut_callback(dns_rbtnode_t *node, dns_name_t *name, void *arg) {
                 * may clear search->wild.
                 */
                search->wild = ISC_FALSE;
-               if (found->type == dns_rdatatype_dname) {
-                       /*
-                        * Finding a DNAME stops all further searching.
-                        *
-                        * Note: We return DNS_R_PARTIALMATCH instead of
-                        * DNS_R_DNAME here because that way zone_find()
-                        * does fewer result code comparisions.
-                        */
-                       result = DNS_R_PARTIALMATCH;
-               } else if ((search->options & DNS_DBFIND_GLUEOK) == 0) {
+               if ((search->options & DNS_DBFIND_GLUEOK) == 0) {
                        /*
                         * If the caller does not want to find glue, then
                         * this is the best answer and the search should
                         * stop now.
-                        *
-                        * Note: We return DNS_R_PARTIALMATCH instead of
-                        * DNS_R_DELEGATION here because that way zone_find()
-                        * does fewer result code comparisions.
                         */
                        result = DNS_R_PARTIALMATCH;
                } else {