Sophie

Sophie

distrib > Scientific%20Linux > 5x > x86_64 > media > main-src > by-pkgid > a0ef309aba3a78d3350b149f382e72aa > files > 51

bind-9.3.6-25.P1.el5_11.12.src.rpm

diff -up bind-9.3.6-P1/bin/named/config.c.rh483708 bind-9.3.6-P1/bin/named/config.c
--- bind-9.3.6-P1/bin/named/config.c.rh483708	2009-04-24 15:24:29.334932885 +0200
+++ bind-9.3.6-P1/bin/named/config.c	2009-04-24 15:24:29.354932942 +0200
@@ -97,6 +97,7 @@ options {\n\
 	reserved-sockets 512;\n\
 \n\
 	/* view */\n\
+	allow-query-cache {any;};\n\
 	allow-notify {none;};\n\
 	allow-update-forwarding {none;};\n\
 	allow-recursion {any;};\n\
diff -up bind-9.3.6-P1/bin/named/named.conf.5.rh483708 bind-9.3.6-P1/bin/named/named.conf.5
--- bind-9.3.6-P1/bin/named/named.conf.5.rh483708	2009-04-24 15:25:47.366902614 +0200
+++ bind-9.3.6-P1/bin/named/named.conf.5	2009-04-24 15:27:05.154900907 +0200
@@ -234,6 +234,7 @@ options {
 	dialup \fIdialuptype\fR;
 	ixfr\-from\-differences \fIixfrdiff\fR;
 	allow\-query { \fIaddress_match_element\fR; ... };
+	allow\-query\-cache { \fIaddress_match_element\fR; ... };
 	allow\-transfer { \fIaddress_match_element\fR; ... };
 	allow\-update\-forwarding { \fIaddress_match_element\fR; ... };
 	notify \fInotifytype\fR;
@@ -347,6 +348,7 @@ view \fIstring\fR \fIoptional_class\fR {
 	dialup \fIdialuptype\fR;
 	ixfr\-from\-differences \fIixfrdiff\fR;
 	allow\-query { \fIaddress_match_element\fR; ... };
+	allow\-query\-cache { \fIaddress_match_element\fR; ... };
 	allow\-transfer { \fIaddress_match_element\fR; ... };
 	allow\-update\-forwarding { \fIaddress_match_element\fR; ... };
 	notify \fInotifytype\fR;
diff -up bind-9.3.6-P1/bin/named/server.c.rh483708 bind-9.3.6-P1/bin/named/server.c
--- bind-9.3.6-P1/bin/named/server.c.rh483708	2009-04-24 15:24:29.338912373 +0200
+++ bind-9.3.6-P1/bin/named/server.c	2009-04-24 15:24:29.354932942 +0200
@@ -1168,7 +1168,7 @@ configure_view(dns_view_t *view, const c
 		view->additionalfromcache = ISC_TRUE;
 	}
 
-	CHECK(configure_view_acl(vconfig, config, "allow-query",
+	CHECK(configure_view_acl(vconfig, config, "allow-query-cache",
 				 actx, ns_g_mctx, &view->queryacl));
 
 	if (strcmp(view->name, "_bind") != 0)
@@ -1197,6 +1197,12 @@ configure_view(dns_view_t *view, const c
 			      "active%s%s", forview, viewname);
 	}
 
+	if (view->queryacl == NULL && view->recursionacl != NULL)
+		dns_acl_attach(view->recursionacl, &view->queryacl);
+	if (view->queryacl == NULL && view->recursion)
+		CHECK(configure_view_acl(vconfig, config, "allow-query",
+					 actx, ns_g_mctx, &view->queryacl));
+
 	CHECK(configure_view_acl(vconfig, config, "sortlist",
 				 actx, ns_g_mctx, &view->sortlist));
 
diff -up bind-9.3.6-P1/bin/named/zoneconf.c.rh483708 bind-9.3.6-P1/bin/named/zoneconf.c
--- bind-9.3.6-P1/bin/named/zoneconf.c.rh483708	2009-04-24 15:24:29.346942537 +0200
+++ bind-9.3.6-P1/bin/named/zoneconf.c	2009-04-24 15:24:29.354932942 +0200
@@ -62,7 +62,7 @@ configure_zone_acl(const cfg_obj_t *zcon
 		   void (*clearzacl)(dns_zone_t *))
 {
 	isc_result_t result;
-	const cfg_obj_t *maps[4];
+	const cfg_obj_t *maps[5];
 	const cfg_obj_t *aclobj = NULL;
 	int i = 0;
 	dns_acl_t *dacl = NULL;
@@ -77,6 +77,8 @@ configure_zone_acl(const cfg_obj_t *zcon
 		if (options != NULL)
 			maps[i++] = options;
 	}
+
+	maps[i++] = ns_g_defaults;
 	maps[i] = NULL;
 
 	result = ns_config_get(maps, aclname, &aclobj);
diff -up bind-9.3.6-P1/lib/isccfg/namedconf.c.rh483708 bind-9.3.6-P1/lib/isccfg/namedconf.c
--- bind-9.3.6-P1/lib/isccfg/namedconf.c.rh483708	2009-04-24 15:24:29.350912116 +0200
+++ bind-9.3.6-P1/lib/isccfg/namedconf.c	2009-04-24 15:24:29.354932942 +0200
@@ -743,6 +743,7 @@ static cfg_type_t cfg_type_lookaside = {
 
 static cfg_clausedef_t
 view_clauses[] = {
+	{ "allow-query-cache", &cfg_type_bracketed_aml, 0 },
 	{ "allow-recursion", &cfg_type_bracketed_aml, 0 },
 	{ "allow-v6-synthesis", &cfg_type_bracketed_aml,
 	  CFG_CLAUSEFLAG_OBSOLETE },