bind9/bin/tests/system
Mark Andrews 71eafb2cb8 perform a more complete cleanup after running system tests [rt41255]
(cherry picked from commit ecfedec0e0)

Conflicts:
	bin/tests/system/acl/clean.sh
	bin/tests/system/addzone/clean.sh
	bin/tests/system/allow_query/clean.sh
	bin/tests/system/autosign/clean.sh
	bin/tests/system/case/clean.sh
	bin/tests/system/checknames/clean.sh
	bin/tests/system/dlzexternal/clean.sh
	bin/tests/system/dscp/clean.sh
	bin/tests/system/ednscompliance/clean.sh
	bin/tests/system/emptyzones/clean.sh
	bin/tests/system/formerr/clean.sh
	bin/tests/system/forward/clean.sh
	bin/tests/system/glue/clean.sh
	bin/tests/system/limits/clean.sh
	bin/tests/system/lwresd/clean.sh
	bin/tests/system/masterfile/clean.sh
	bin/tests/system/names/clean.sh
	bin/tests/system/nslookup/clean.sh
	bin/tests/system/nsupdate/clean.sh
	bin/tests/system/sfcache/clean.sh
	bin/tests/system/sit/clean.sh
	bin/tests/system/sortlist/clean.sh
	bin/tests/system/stub/clean.sh
	bin/tests/system/xferquota/clean.sh

(cherry picked from commit f9c9fce5c7)

Conflicts:
	bin/tests/system/digdelv/tests.sh
	bin/tests/system/dlzexternal/clean.sh
	bin/tests/system/formerr/clean.sh
	bin/tests/system/resolver/clean.sh
	bin/tests/system/rndc/clean.sh
	bin/tests/system/rrl/prereq.sh
	bin/tests/system/sit/clean.sh
	bin/tests/system/tkey/clean.sh
	bin/tests/system/zonechecks/clean.sh
	lib/export/isc/nothreads/include/Makefile.in
2015-12-16 17:04:30 +11:00
..
acl perform a more complete cleanup after running system tests [rt41255] 2015-12-16 17:04:30 +11:00
additional update copyright notice 2013-09-16 23:45:41 +00:00
addzone perform a more complete cleanup after running system tests [rt41255] 2015-12-16 17:04:30 +11:00
allow_query perform a more complete cleanup after running system tests [rt41255] 2015-12-16 17:04:30 +11:00
autosign perform a more complete cleanup after running system tests [rt41255] 2015-12-16 17:04:30 +11:00
builtin perform a more complete cleanup after running system tests [rt41255] 2015-12-16 17:04:30 +11:00
cacheclean perform a more complete cleanup after running system tests [rt41255] 2015-12-16 17:04:30 +11:00
case perform a more complete cleanup after running system tests [rt41255] 2015-12-16 17:04:30 +11:00
checkconf perform a more complete cleanup after running system tests [rt41255] 2015-12-16 17:04:30 +11:00
checkds update copyright notice 2014-05-07 23:46:06 +00:00
checknames perform a more complete cleanup after running system tests [rt41255] 2015-12-16 17:04:30 +11:00
checkzone perform a more complete cleanup after running system tests [rt41255] 2015-12-16 17:04:30 +11:00
common update copyright notice 2011-03-12 04:59:49 +00:00
coverage [v9_9] use posix-compatible shell in system tests 2014-05-06 22:18:08 -07:00
database update copyright notice 2012-06-29 23:45:45 +00:00
dialup update copyright notice 2012-06-29 23:45:45 +00:00
digdelv perform a more complete cleanup after running system tests [rt41255] 2015-12-16 17:04:30 +11:00
dlv [v9_9] use posix-compatible shell in system tests 2014-05-06 22:18:08 -07:00
dlvauto [v9_9] use posix-compatible shell in system tests 2014-05-06 22:18:08 -07:00
dlz update copyright notice / whitespace 2015-12-03 23:46:14 +00:00
dlzexternal perform a more complete cleanup after running system tests [rt41255] 2015-12-16 17:04:30 +11:00
dname perform a more complete cleanup after running system tests [rt41255] 2015-12-16 17:04:30 +11:00
dns64 perform a more complete cleanup after running system tests [rt41255] 2015-12-16 17:04:30 +11:00
dnssec perform a more complete cleanup after running system tests [rt41255] 2015-12-16 17:04:30 +11:00
dsdigest [v9_9] use posix-compatible shell in system tests 2014-05-06 22:18:08 -07:00
ecdsa update copyright notice / whitespace 2015-09-17 23:46:13 +00:00
emptyzones perform a more complete cleanup after running system tests [rt41255] 2015-12-16 17:04:30 +11:00
fetchlimit perform a more complete cleanup after running system tests [rt41255] 2015-12-16 17:04:30 +11:00
filter-aaaa update copyright notice / whitespace 2015-11-09 23:46:11 +00:00
formerr perform a more complete cleanup after running system tests [rt41255] 2015-12-16 17:04:30 +11:00
forward perform a more complete cleanup after running system tests [rt41255] 2015-12-16 17:04:30 +11:00
glue perform a more complete cleanup after running system tests [rt41255] 2015-12-16 17:04:30 +11:00
gost [v9_9] use posix-compatible shell in system tests 2014-05-06 22:18:08 -07:00
inline update copyright notice / whitespace 2015-03-04 23:46:08 +00:00
ixfr perform a more complete cleanup after running system tests [rt41255] 2015-12-16 17:04:30 +11:00
legacy ignore dig's result when expecting 'connection timed out' 2015-02-12 13:45:04 +11:00
limits perform a more complete cleanup after running system tests [rt41255] 2015-12-16 17:04:30 +11:00
logfileconfig update copyright notice 2014-05-07 23:46:06 +00:00
lwresd perform a more complete cleanup after running system tests [rt41255] 2015-12-16 17:04:30 +11:00
masterfile perform a more complete cleanup after running system tests [rt41255] 2015-12-16 17:04:30 +11:00
masterformat perform a more complete cleanup after running system tests [rt41255] 2015-12-16 17:04:30 +11:00
metadata [v9_9] use posix-compatible shell in system tests 2014-05-06 22:18:08 -07:00
notify perform a more complete cleanup after running system tests [rt41255] 2015-12-16 17:04:30 +11:00
nslookup perform a more complete cleanup after running system tests [rt41255] 2015-12-16 17:04:30 +11:00
nsupdate perform a more complete cleanup after running system tests [rt41255] 2015-12-16 17:04:30 +11:00
pending [v9_9] use posix-compatible shell in system tests 2014-05-06 22:18:08 -07:00
pkcs11 [v9_9] missed sourcing conf.sh 2014-05-06 22:47:18 -07:00
reclimit [v9_9] check for Net::DNS 2015-05-04 12:52:44 -07:00
redirect perform a more complete cleanup after running system tests [rt41255] 2015-12-16 17:04:30 +11:00
resolver perform a more complete cleanup after running system tests [rt41255] 2015-12-16 17:04:30 +11:00
rndc perform a more complete cleanup after running system tests [rt41255] 2015-12-16 17:04:30 +11:00
rpz update copyright notice / whitespace 2015-11-09 23:46:11 +00:00
rrl update copyright notice / whitespace 2015-12-15 23:46:11 +00:00
rrsetorder perform a more complete cleanup after running system tests [rt41255] 2015-12-16 17:04:30 +11:00
rsabigexponent perform a more complete cleanup after running system tests [rt41255] 2015-12-16 17:04:30 +11:00
smartsign [v9_9] use posix-compatible shell in system tests 2014-05-06 22:18:08 -07:00
sortlist perform a more complete cleanup after running system tests [rt41255] 2015-12-16 17:04:30 +11:00
spf update copyrights 2014-06-11 10:29:21 +10:00
staticstub update copyright notice / whitespace 2015-03-01 23:46:02 +00:00
statistics perform a more complete cleanup after running system tests [rt41255] 2015-12-16 17:04:30 +11:00
stress update copyright notice / whitespace 2015-05-04 23:46:10 +00:00
stub perform a more complete cleanup after running system tests [rt41255] 2015-12-16 17:04:30 +11:00
tkey perform a more complete cleanup after running system tests [rt41255] 2015-12-16 17:04:30 +11:00
tsig update copyright notice 2012-10-18 23:45:54 +00:00
tsiggss perform a more complete cleanup after running system tests [rt41255] 2015-12-16 17:04:30 +11:00
unknown perform a more complete cleanup after running system tests [rt41255] 2015-12-16 17:04:30 +11:00
upforwd perform a more complete cleanup after running system tests [rt41255] 2015-12-16 17:04:30 +11:00
v6synth update copyright notice 2012-06-29 23:45:45 +00:00
verify [v9_9] use posix-compatible shell in system tests 2014-05-06 22:18:08 -07:00
views perform a more complete cleanup after running system tests [rt41255] 2015-12-16 17:04:30 +11:00
wildcard [v9_9] use posix-compatible shell in system tests 2014-05-06 22:18:08 -07:00
xfer 4276. [protocol] Add support for SMIMEA. [RT #40513] 2015-12-08 08:18:25 +11:00
xferquota perform a more complete cleanup after running system tests [rt41255] 2015-12-16 17:04:30 +11:00
zero perform a more complete cleanup after running system tests [rt41255] 2015-12-16 17:04:30 +11:00
zonechecks perform a more complete cleanup after running system tests [rt41255] 2015-12-16 17:04:30 +11:00
.gitignore [v9_9] testcrypto.sh in system tests 2014-02-06 16:10:03 -08:00
ans.pl 4027. [port] Net::DNS 0.81 compatibility. [RT #38165 2014-12-23 08:38:21 +11:00
clean.sh perform a more complete cleanup after running system tests [rt41255] 2015-12-16 17:04:30 +11:00
cleanall.sh update copyright notice / whitespace 2015-03-02 23:46:08 +00:00
cleanpkcs11.sh 3354. [func] Improve OpenSSL error logging. [RT #29932] 2012-07-23 15:09:42 +10:00
conf.sh.in add digdelv 2015-12-11 14:52:12 +11:00
digcomp.pl update copyright notice 2013-09-18 23:45:47 +00:00
ditch.pl update copyright notice / whitespace 2015-07-09 23:46:11 +00:00
genzone.sh 4276. [protocol] Add support for SMIMEA. [RT #40513] 2015-12-08 08:18:25 +11:00
ifconfig.sh update copyright notice 2013-01-21 23:45:36 +00:00
Makefile.in [v9_9] DDoS mitigation features 2015-07-08 23:00:58 -07:00
org.isc.bind.system update copyright notice 2012-06-29 23:45:45 +00:00
org.isc.bind.system.plist 2948. [port] MacOS: provide a mechanism to configure the test 2010-08-25 04:51:51 +00:00
packet.pl update copyright notice 2012-06-29 23:45:45 +00:00
README Add support for Valgrind's helgrind tool (#38706) 2015-03-02 13:45:01 +05:30
run.sh perform a more complete cleanup after running system tests [rt41255] 2015-12-16 17:04:30 +11:00
runall.sh perform a more complete cleanup after running system tests [rt41255] 2015-12-16 17:04:30 +11:00
send.pl update copyright notice 2012-06-29 23:45:45 +00:00
setup.sh update copyright notice 2014-05-07 23:46:06 +00:00
start.pl 4260. [security] Insufficient testing when parsing a message allowed 2015-11-16 13:28:28 +11:00
start.sh update copyright notice 2012-06-29 23:45:45 +00:00
stop.pl update copyright notice 2012-06-29 23:45:45 +00:00
stop.sh update copyright notice 2012-06-29 23:45:45 +00:00
testcrypto.sh [v9_9] use test -r in system tests 2014-04-09 20:30:17 -07:00
testsock.pl update copyright notice 2013-01-09 23:45:38 +00:00
testsock6.pl update copyright notice 2014-04-29 23:46:03 +00:00

Copyright (C) 2004, 2010, 2011, 2013, 2015  Internet Systems Consortium, Inc. ("ISC")
Copyright (C) 2000, 2001  Internet Software Consortium.
See COPYRIGHT in the source root or http://isc.org/copyright.html for terms.

This is a simple test environment for running bind9 system tests
involving multiple name servers.

There are multiple test suites, each in a separate subdirectory and
involving a different DNS setup.  They are:

  dnssec/	DNSSEC tests
  forward/	Forwarding tests
  glue/		Glue handling tests
  limits/	Tests of handling of large data (close to server limits)
  lwresd/	Tests of the lightweight resolver library and daemon
  notify/	More NOTIFY tests
  nsupdate/	Dynamic update and IXFR tests
  resolver/     Regression tests for resolver bugs that have been fixed
		(not a complete resolver test suite)
  rrl/		query rate limiting
  rpz/		Tests of response policy zone (RPZ) rewriting
  stub/		Tests of stub zone functionality
  unknown/	Unknown type and class tests
  upforwd/	Update forwarding tests
  views/	Tests of the "views" statement
  xfer/		Zone transfer tests
  xferquota/	Zone transfer quota tests

Typically each test suite sets up 2-5 name servers and then performs
one or more tests against them.  Within the test suite subdirectory,
each name server has a separate subdirectory containing its
configuration data.  By convention, these subdirectories are named
"ns1", "ns2", etc.

The tests are completely self-contained and do not require access to
the real DNS.  Generally, one of the test servers (ns1) is set up as a
root name server and is listed in the hints file of the others.

To enable all servers to run on the same machine, they bind to
separate virtual IP address on the loopback interface.  ns1 runs on
10.53.0.1, ns2 on 10.53.0.2, etc.  Before running any tests, you must
set up these addresses by running "ifconfig.sh up" as root.

Mac OS X:
If you wish to make the interfaces survive across reboots
copy org.isc.bind.system and org.isc.bind.system to
/Library/LaunchDaemons then run
"launchctl load /Library/LaunchDaemons/org.isc.bind.system.plist" as
root.

The servers use port 5300 instead of the usual port 53, so they can be
run without root privileges once the interfaces have been set up.

The tests can be run individually like this:

  sh run.sh xfer
  sh run.sh notify
  etc.

To run all the tests, just type "make test".

When running system tests, named and lwresd can be run under
Valgrind. The output from Valgrind are sent to per-process files that
can be reviewed after the test has completed. To enable this, set the
USE_VALGRIND environment variable to "helgrind" to run the Helgrind
tool, or any other value to run the Memcheck tool. To use "helgrind"
effectively, build BIND with --disable-atomic.