+2790. [bug] Handle DS queries to stub zones.
+
2786. [bug] Additional could be promoted to answer. [RT #20663]
2784. [bug] TC was not always being set when required glue was
* PERFORMANCE OF THIS SOFTWARE.
*/
-/* $Id: rbtdb.c,v 1.248.12.20 2009/11/25 02:32:05 marka Exp $ */
+/* $Id: rbtdb.c,v 1.248.12.21 2009/11/26 03:40:20 marka Exp $ */
/*! \file */
} else {
/*
* The node may be a zone cut itself. If it might be one,
- * make sure we check for it later.
+ * make sure we check for it later.
+ *
+ * DS records live above the zone cut in ordinary zone so
+ * we want to ignore any referral.
+ *
+ * Stub zones don't have anything "above" the delgation so
+ * we always return a referral.
*/
if (node->find_callback &&
- (node != search.rbtdb->origin_node ||
- IS_STUB(search.rbtdb)) &&
- !dns_rdatatype_atparent(type))
+ ((node != search.rbtdb->origin_node &&
+ !dns_rdatatype_atparent(type)) ||
+ IS_STUB(search.rbtdb)))
maybe_zonecut = ISC_TRUE;
}