[master] disallow delzone on policiy zones

4311.	[bug]		Prevent "rndc delzone" from being used on
			response-policy zones. [RT #41593]
This commit is contained in:
Evan Hunt
2016-02-01 09:33:14 -08:00
parent d1dbf6b20f
commit ec450fde7c
4 changed files with 32 additions and 9 deletions

View File

@@ -14,8 +14,6 @@
* PERFORMANCE OF THIS SOFTWARE.
*/
/* $Id: named2.conf,v 1.5 2011/06/17 23:47:49 tbox Exp $ */
controls { /* empty */ };
include "../../common/controls.conf";
@@ -33,10 +31,17 @@ view internal {
allow-new-zones no;
recursion yes;
response-policy { zone "policy"; };
zone "." {
type hint;
file "../../common/root.hint";
};
zone "policy" {
type master;
file "normal.db";
};
};
view external {
@@ -54,9 +59,9 @@ view external {
acl match { none; };
acl nobody { none; };
view extra {
match-clients { match; };
allow-new-zones yes;
allow-transfer { nobody; };
allow-query { nobody; };
allow-recursion { nobody; };
match-clients { match; };
allow-new-zones yes;
allow-transfer { nobody; };
allow-query { nobody; };
allow-recursion { nobody; };
};

View File

@@ -14,8 +14,6 @@
# OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
# PERFORMANCE OF THIS SOFTWARE.
# $Id: tests.sh,v 1.6 2011/06/17 23:47:49 tbox Exp $
SYSTEMTESTTOP=..
. $SYSTEMTESTTOP/conf.sh
@@ -356,6 +354,13 @@ n=`expr $n + 1`
if [ $ret != 0 ]; then echo "I:failed"; fi
status=`expr $status + $ret`
echo "I:attempting to delete a policy zone ($n)"
ret=0
$RNDC -c ../common/rndc.conf -s 10.53.0.2 -p 9953 delzone 'policy in internal' 2>&1 | grep 'cannot be deleted' > /dev/null || ret=1
n=`expr $n + 1`
if [ $ret != 0 ]; then echo "I:failed"; fi
status=`expr $status + $ret`
echo "I:ensure the configuration context is cleaned up correctly ($n)"
ret=0
$RNDC -c ../common/rndc.conf -s 10.53.0.2 -p 9953 reconfig > /dev/null 2>&1 || ret=1