From: Scott Mann Date: Fri, 4 Mar 2011 14:43:58 +0000 (+0000) Subject: Adding missing files for RT22771. X-Git-Tag: v9.9.0a1~609 X-Git-Url: http://git.ipfire.org/gitweb/?a=commitdiff_plain;h=be59d1eb72baa92baa74766a0a1ff4283e4e6ba5;p=thirdparty%2Fbind9.git Adding missing files for RT22771. --- diff --git a/bin/tests/system/logfileconfig/clean.sh b/bin/tests/system/logfileconfig/clean.sh new file mode 100644 index 00000000000..321048348ec --- /dev/null +++ b/bin/tests/system/logfileconfig/clean.sh @@ -0,0 +1,28 @@ +#!/bin/sh +# +# Copyright (C) 2011 Internet Systems Consortium, Inc. ("ISC") +# Copyright (C) 2004, 2007 Internet Systems Consortium, Inc. ("ISC") +# Copyright (C) 2000, 2001 Internet Software Consortium. +# +# Permission to use, copy, modify, and/or distribute this software for any +# purpose with or without fee is hereby granted, provided that the above +# copyright notice and this permission notice appear in all copies. +# +# THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH +# REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY +# AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT, +# INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM +# LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE +# OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +# PERFORMANCE OF THIS SOFTWARE. + +# $Id: clean.sh,v 1.2 2011/03/04 14:43:57 smann Exp $ + +# +# Clean up after log file tests +# +rm -f ns1/named.pid ns1/named.run +rm -f ns1/named.memstats ns1/dig.out +rm -f ns1/named_log ns1/named_pipe ns1/named_sym +rm -rf ns1/named_dir +cp ns1/named.plain ns1/named.conf diff --git a/bin/tests/system/logfileconfig/ns1/named.conf b/bin/tests/system/logfileconfig/ns1/named.conf new file mode 100644 index 00000000000..55a13d96b15 --- /dev/null +++ b/bin/tests/system/logfileconfig/ns1/named.conf @@ -0,0 +1,57 @@ +/* + * Copyright (C) 2011 Internet Systems Consortium, Inc. ("ISC") + * + * Permission to use, copy, modify, and/or distribute this software for any + * purpose with or without fee is hereby granted, provided that the above + * copyright notice and this permission notice appear in all copies. + * + * THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH + * REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT, + * INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM + * LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE + * OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR + * PERFORMANCE OF THIS SOFTWARE. + */ + +/* $Id: named.conf,v 1.2 2011/03/04 14:43:57 smann Exp $ */ + +options { + query-source address 10.53.0.1; + notify-source 10.53.0.1; + transfer-source 10.53.0.1; + port 5300; + pid-file "named.pid"; + listen-on port 5300 { + 10.53.0.1; + }; + listen-on-v6 { none; }; + recursion no; + notify yes; +}; + +logging { + channel default_log { + file "named_log"; + print-time yes; + }; + category default { default_log; default_debug; }; + category lame-servers { null; }; +}; + +controls { + inet 127.0.0.1 port 9593 allow { + 127.0.0.1/32; ::1/128; } + keys { "rndc-key"; }; +}; + +key "rndc-key" { + algorithm hmac-md5; + secret "Am9vCg=="; +}; + + +zone "." { + type master; + file "root.db"; +}; diff --git a/bin/tests/system/logfileconfig/ns1/named.dirconf b/bin/tests/system/logfileconfig/ns1/named.dirconf new file mode 100644 index 00000000000..9cbd03900c4 --- /dev/null +++ b/bin/tests/system/logfileconfig/ns1/named.dirconf @@ -0,0 +1,56 @@ +/* + * Copyright (C) 2011 Internet Systems Consortium, Inc. ("ISC") + * + * Permission to use, copy, modify, and/or distribute this software for any + * purpose with or without fee is hereby granted, provided that the above + * copyright notice and this permission notice appear in all copies. + * + * THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH + * REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT, + * INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM + * LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE + * OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR + * PERFORMANCE OF THIS SOFTWARE. + */ + +/* $Id: named.dirconf,v 1.2 2011/03/04 14:43:57 smann Exp $ */ + +options { + query-source address 10.53.0.1; + notify-source 10.53.0.1; + transfer-source 10.53.0.1; + port 5300; + pid-file "named.pid"; + listen-on port 5300 { + 10.53.0.1; + }; + listen-on-v6 { none; }; + recursion no; + notify yes; +}; + +logging { + channel default_log { + file "named_dir"; + print-time yes; + }; + category default { default_log; default_debug; }; + category lame-servers { null; }; +}; + +controls { + inet 127.0.0.1 port 9593 allow { + 127.0.0.1/32; ::1/128; } + keys { "rndc-key"; }; +}; + +key "rndc-key" { + algorithm hmac-md5; + secret "Am9vCg=="; +}; + +zone "." { + type master; + file "root.db"; +}; diff --git a/bin/tests/system/logfileconfig/ns1/named.pipeconf b/bin/tests/system/logfileconfig/ns1/named.pipeconf new file mode 100644 index 00000000000..bf5d02f2cc8 --- /dev/null +++ b/bin/tests/system/logfileconfig/ns1/named.pipeconf @@ -0,0 +1,56 @@ +/* + * Copyright (C) 2011 Internet Systems Consortium, Inc. ("ISC") + * + * Permission to use, copy, modify, and/or distribute this software for any + * purpose with or without fee is hereby granted, provided that the above + * copyright notice and this permission notice appear in all copies. + * + * THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH + * REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT, + * INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM + * LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE + * OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR + * PERFORMANCE OF THIS SOFTWARE. + */ + +/* $Id: named.pipeconf,v 1.2 2011/03/04 14:43:57 smann Exp $ */ + +options { + query-source address 10.53.0.1; + notify-source 10.53.0.1; + transfer-source 10.53.0.1; + port 5300; + pid-file "named.pid"; + listen-on port 5300 { + 10.53.0.1; + }; + listen-on-v6 { none; }; + recursion no; + notify yes; +}; + +logging { + channel default_log { + file "named_pipe"; + print-time yes; + }; + category default { default_log; default_debug; }; + category lame-servers { null; }; +}; + +controls { + inet 127.0.0.1 port 9593 allow { + 127.0.0.1/32; ::1/128; } + keys { "rndc-key"; }; +}; + +key "rndc-key" { + algorithm hmac-md5; + secret "Am9vCg=="; +}; + +zone "." { + type master; + file "root.db"; +}; diff --git a/bin/tests/system/logfileconfig/ns1/named.plain b/bin/tests/system/logfileconfig/ns1/named.plain new file mode 100644 index 00000000000..64cfbfad938 --- /dev/null +++ b/bin/tests/system/logfileconfig/ns1/named.plain @@ -0,0 +1,57 @@ +/* + * Copyright (C) 2011 Internet Systems Consortium, Inc. ("ISC") + * + * Permission to use, copy, modify, and/or distribute this software for any + * purpose with or without fee is hereby granted, provided that the above + * copyright notice and this permission notice appear in all copies. + * + * THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH + * REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT, + * INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM + * LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE + * OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR + * PERFORMANCE OF THIS SOFTWARE. + */ + +/* $Id: named.plain,v 1.2 2011/03/04 14:43:57 smann Exp $ */ + +options { + query-source address 10.53.0.1; + notify-source 10.53.0.1; + transfer-source 10.53.0.1; + port 5300; + pid-file "named.pid"; + listen-on port 5300 { + 10.53.0.1; + }; + listen-on-v6 { none; }; + recursion no; + notify yes; +}; + +logging { + channel default_log { + file "named_log"; + print-time yes; + }; + category default { default_log; default_debug; }; + category lame-servers { null; }; +}; + +controls { + inet 127.0.0.1 port 9593 allow { + 127.0.0.1/32; ::1/128; } + keys { "rndc-key"; }; +}; + +key "rndc-key" { + algorithm hmac-md5; + secret "Am9vCg=="; +}; + + +zone "." { + type master; + file "root.db"; +}; diff --git a/bin/tests/system/logfileconfig/ns1/named.symconf b/bin/tests/system/logfileconfig/ns1/named.symconf new file mode 100644 index 00000000000..fc3f9bdbf5d --- /dev/null +++ b/bin/tests/system/logfileconfig/ns1/named.symconf @@ -0,0 +1,56 @@ +/* + * Copyright (C) 2011 Internet Systems Consortium, Inc. ("ISC") + * + * Permission to use, copy, modify, and/or distribute this software for any + * purpose with or without fee is hereby granted, provided that the above + * copyright notice and this permission notice appear in all copies. + * + * THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH + * REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT, + * INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM + * LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE + * OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR + * PERFORMANCE OF THIS SOFTWARE. + */ + +/* $Id: named.symconf,v 1.2 2011/03/04 14:43:57 smann Exp $ */ + +options { + query-source address 10.53.0.1; + notify-source 10.53.0.1; + transfer-source 10.53.0.1; + port 5300; + pid-file "named.pid"; + listen-on port 5300 { + 10.53.0.1; + }; + listen-on-v6 { none; }; + recursion no; + notify yes; +}; + +logging { + channel default_log { + file "named_sym"; + print-time yes; + }; + category default { default_log; default_debug; }; + category lame-servers { null; }; +}; + +controls { + inet 127.0.0.1 port 9593 allow { + 127.0.0.1/32; ::1/128; } + keys { "rndc-key"; }; +}; + +key "rndc-key" { + algorithm hmac-md5; + secret "Am9vCg=="; +}; + +zone "." { + type master; + file "root.db"; +}; diff --git a/bin/tests/system/logfileconfig/ns1/rndc.conf b/bin/tests/system/logfileconfig/ns1/rndc.conf new file mode 100644 index 00000000000..4d0eeaed630 --- /dev/null +++ b/bin/tests/system/logfileconfig/ns1/rndc.conf @@ -0,0 +1,13 @@ +options { + default-server localhost; +}; + +server localhost { + key "rndc-key"; + addresses { localhost port 9593; }; +}; + +key "rndc-key" { + algorithm hmac-md5; + secret "Am9vCg=="; +}; diff --git a/bin/tests/system/logfileconfig/ns1/root.db b/bin/tests/system/logfileconfig/ns1/root.db new file mode 100644 index 00000000000..6778274c567 --- /dev/null +++ b/bin/tests/system/logfileconfig/ns1/root.db @@ -0,0 +1,33 @@ +; Copyright (C) 2004, 2007 Internet Systems Consortium, Inc. ("ISC") +; Copyright (C) 2000, 2001 Internet Software Consortium. +; +; Permission to use, copy, modify, and/or distribute this software for any +; purpose with or without fee is hereby granted, provided that the above +; copyright notice and this permission notice appear in all copies. +; +; THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH +; REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY +; AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT, +; INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM +; LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE +; OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +; PERFORMANCE OF THIS SOFTWARE. + +; $Id: root.db,v 1.2 2011/03/04 14:43:58 smann Exp $ + +$TTL 300 +. IN SOA gson.nominum.com. a.root.servers.nil. ( + 2000042100 ; serial + 600 ; refresh + 600 ; retry + 1200 ; expire + 600 ; minimum + ) +. NS a.root-servers.nil. +a.root-servers.nil. A 10.53.0.1 + +example. NS ns2.example. +ns2.example. A 10.53.0.2 + +tsigzone. NS ns2.tsigzone. +ns2.tsigzone. A 10.53.0.2 diff --git a/bin/tests/system/logfileconfig/tests.sh b/bin/tests/system/logfileconfig/tests.sh new file mode 100644 index 00000000000..70f64fc0b34 --- /dev/null +++ b/bin/tests/system/logfileconfig/tests.sh @@ -0,0 +1,145 @@ +#!/bin/sh +# +# Copyright (C) 2011 Internet Systems Consortium, Inc. ("ISC") +# Copyright (C) 2004, 2005, 2007 Internet Systems Consortium, Inc. ("ISC") +# Copyright (C) 2000, 2001 Internet Software Consortium. +# +# Permission to use, copy, modify, and/or distribute this software for any +# purpose with or without fee is hereby granted, provided that the above +# copyright notice and this permission notice appear in all copies. +# +# THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH +# REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY +# AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT, +# INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM +# LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE +# OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +# PERFORMANCE OF THIS SOFTWARE. + +# $Id: tests.sh,v 1.2 2011/03/04 14:43:57 smann Exp $ + +SYSTEMTESTTOP=.. +. $SYSTEMTESTTOP/conf.sh +THISDIR=`pwd` +CONFDIR="ns1" +PLAINCONF="${THISDIR}/${CONFDIR}/named.plain" +DIRCONF="${THISDIR}/${CONFDIR}/named.dirconf" +PIPECONF="${THISDIR}/${CONFDIR}/named.pipeconf" +SYMCONF="${THISDIR}/${CONFDIR}/named.symconf" +PLAINFILE="named_log" +DIRFILE="named_dir" +PIPEFILE="named_pipe" +SYMFILE="named_sym" +PIDFILE="${THISDIR}/${CONFDIR}/named.pid" +myRNDC="$RNDC -c ${THISDIR}/${CONFDIR}/rndc.conf" +myNAMED="$NAMED -c ${THISDIR}/${CONFDIR}/named.conf -m record,size,mctx -T clienttest -d 99" + +# Stop the server and run through a series of tests with various config +# files while controlling the stop/start of the server. +# Have to stop the stock server because it uses "-g" +# +$PERL ../stop.pl . ns1 + +# Make sure everything is cleaned up +sh ./clean.sh + +cd $CONFDIR + +$myNAMED > /dev/null 2>&1 + +if [ $? -ne 0 ] +then + echo "I:failed to start $myNAMED" + echo "I:exit status: $status" + exit $status +fi + +status=0 + +echo "I:testing log file validity (only plain files allowed)" + +# First run with a known good config. +echo > $PLAINFILE +cp $PLAINCONF named.conf +$myRNDC reconfig +grep "reloading configuration failed" named.run > /dev/null 2>&1 +if [ $? -ne 0 ] +then + echo "I: testing plain file succeeded" +else + echo "I: testing plain file failed (unexpected)" + echo "I:exit status: 1" + exit 1 +fi + +# Now try directory, expect failure +echo "I: testing directory as log file" +echo > named.run +mkdir -p $DIRFILE >/dev/null 2>&1 +if [ $? -eq 0 ] +then + cp $DIRCONF named.conf + echo > named.run + $myRNDC reconfig + grep "invalid file" named.run > /dev/null 2>&1 + if [ $? -ne 0 ] + then + echo "I: testing directory as file succeeded (UNEXPECTED)" + echo "I:exit status: 1" + exit 1 + else + echo "I: testing directory as log file failed (expected)" + fi +else + echo "I: skipping directory test (unable to create directory)" +fi + +# Now try pipe file, expect failure +echo "I: testing pipe file as log file" +echo > named.run +mkfifo $PIPEFILE >/dev/null 2>&1 +if [ $? -eq 0 ] +then + cp $PIPECONF named.conf + echo > named.run + $myRNDC reconfig + grep "invalid file" named.run > /dev/null 2>&1 + if [ $? -ne 0 ] + then + echo "I: testing pipe file as log file succeeded (UNEXPECTED)" + echo "I:exit status: 1" + exit 1 + else + echo "I: testing pipe file as log file failed (expected)" + fi +else + echo "I: skipping pipe test (unable to create pipe)" +fi + +# Now try symlink file to plain file, expect success +echo "I: testing symlink to plain file as log file" +# Assume success +status=0 +echo > named.run +echo > $PLAINFILE +ln -s $PLAINFILE $SYMFILE >/dev/null 2>&1 +if [ $? -eq 0 ] +then + cp $SYMCONF named.conf + $myRNDC reconfig + echo > named.run + grep "reloading configuration failed" named.run > /dev/null 2>&1 + if [ $? -ne 0 ] + then + echo "I: testing symlink to plain file succeeded" + else + echo "I: testing symlink to plain file failed (unexpected)" + echo "I:exit status: 1" + exit 1 + fi +else + echo "I: skipping symlink test (unable to create symlink)" +fi + +echo "I:exit status: $status" +exit $status