bind9/bin/tests/system
Mark Andrews 265ba7d08b 4846. [test] Adjust timing values in runtime system test. Address
named.pid removal races in runtime system test.
                        [RT #46800]

(cherry picked from commit c67180f09b)
(cherry picked from commit 0f14b04132)
2017-12-13 10:38:23 +11:00
..
acl update copyright notice / whitespace 2017-11-30 23:48:18 +00:00
additional update copyright notice / whitespace 2017-10-24 23:50:30 +00:00
addzone update copyright notice / whitespace 2017-10-05 23:47:09 +00:00
allow_query update copyright notice / whitespace 2016-06-14 23:45:50 +00:00
autosign increment test number 2017-12-08 14:51:32 +11:00
builtin [v9_10] simplify prereq checks by using feature-test.c 2016-11-01 12:41:48 -07:00
cacheclean [v9_10] revert accidental query logging format change 2016-09-21 11:22:27 -07:00
case update copyright notice / whitespace 2016-06-14 23:45:50 +00:00
chain 4810. [test] The chain system test failed if the IPv6 interfaces 2017-11-08 10:18:41 +11:00
checkconf [v9_10] copyrights 2017-10-29 16:43:58 -07:00
checkds [v9_10] system tests on windows 2016-11-01 09:50:09 -07:00
checknames update copyright notice / whitespace 2016-06-14 23:45:50 +00:00
checkzone update copyright notice / whitespace 2017-08-17 23:49:24 +00:00
common whitspace 2013-09-16 10:14:07 +10:00
cookie [v9_10] copyrights 2017-05-23 16:47:30 -07:00
coverage update copyright notice / whitespace 2016-06-14 23:45:50 +00:00
database update copyright notice / whitespace 2016-06-14 23:45:50 +00:00
dialup update copyright notice / whitespace 2016-06-14 23:45:50 +00:00
digdelv [v9_10] dig: retain domain when retrying with tcp 2017-09-11 10:32:27 -07:00
dlv copyright/whitespace 2016-11-02 10:43:07 +11:00
dlz update copyright notice / whitespace 2016-06-14 23:45:50 +00:00
dlzexternal update copyright notice / whitespace 2017-09-14 23:50:11 +00:00
dlzredir update copyright notice 2012-12-07 23:45:48 +00:00
dns64 add more DNS64 default exclude acl tests 2016-07-13 10:58:37 +10:00
dnssec read dig.out.ns3.test$n rather than dig.out.ns2.test$n 2017-10-25 15:03:24 +11:00
dscp update copyright notice / whitespace 2016-06-14 23:45:50 +00:00
dsdigest copyright/whitespace 2016-11-02 10:43:07 +11:00
ecdsa update copyright notice / whitespace 2016-06-14 23:45:50 +00:00
eddsa update copyright notice / whitespace 2017-08-09 01:13:43 +00:00
ednscompliance do not overflow exit status. [RT #42643] 2016-06-14 14:22:51 +10:00
emptyzones update copyright notice / whitespace 2016-06-14 23:45:50 +00:00
fetchlimit copyright/whitespace 2016-11-02 10:43:07 +11:00
filter-aaaa [v9_10] Regenerate presigned zone for the filter-aaaa system test [RT #46283] 2017-10-16 09:47:10 +02:00
formerr update copyright notice / whitespace 2016-06-14 23:45:50 +00:00
forward do not overflow exit status. [RT #42643] 2016-06-14 14:22:51 +10:00
geoip copyright/whitespace 2016-11-02 10:43:07 +11:00
glue update copyright notice / whitespace 2016-06-14 23:45:50 +00:00
gost update copyright notice / whitespace 2016-06-14 23:45:50 +00:00
inline 4840. [test] Add tests to cover fallback to using ZSK on inactive 2017-12-06 20:50:38 +11:00
integrity update copyright notice / whitespace 2017-01-12 23:46:57 +00:00
ixfr update copyright notice / whitespace 2016-06-14 23:45:50 +00:00
legacy update copyright notice / whitespace 2016-06-14 23:45:50 +00:00
limits update copyright notice / whitespace 2016-06-14 23:45:50 +00:00
logfileconfig update copyright notice / whitespace 2017-11-16 23:46:59 +00:00
lwresd [v9_10] system tests on windows 2016-11-01 09:50:09 -07:00
masterfile [v9_10] system tests on windows 2016-11-01 09:50:09 -07:00
masterformat update copyright notice / whitespace 2017-10-26 23:47:43 +00:00
metadata [v9_10] Prevent dnssec-settime from printing a bogus warning 2017-08-21 10:22:10 +02:00
notify update copyright notice / whitespace 2017-11-08 23:46:59 +00:00
nslookup update copyright notice / whitespace 2016-06-14 23:45:50 +00:00
nsupdate update copyright notice / whitespace 2017-11-27 23:48:26 +00:00
pending copyright/whitespace 2016-11-02 10:43:07 +11:00
pkcs11 update copyright notice / whitespace 2017-07-31 23:47:22 +00:00
pkcs11ssl [v9_10] system tests on windows 2016-11-01 09:50:09 -07:00
reclimit update copyright notice / whitespace 2017-11-21 23:46:55 +00:00
redirect update copyright notice / whitespace 2016-06-14 23:45:50 +00:00
resolver update copyright notice / whitespace 2017-09-12 23:48:28 +00:00
rndc be consistent with master 2017-05-09 11:30:29 +10:00
rpz adjust range 2017-03-02 12:36:29 +11:00
rpzrecurse copyright/whitespace 2016-11-02 10:43:07 +11:00
rrchecker [v9_10] Add support for DOA 2017-10-06 12:56:58 +02:00
rrl update copyright notice / whitespace 2016-11-03 23:49:18 +00:00
rrsetorder [v9_10] system tests on windows 2016-11-01 09:50:09 -07:00
rsabigexponent copyright/whitespace 2016-11-02 10:43:07 +11:00
runtime 4846. [test] Adjust timing values in runtime system test. Address 2017-12-13 10:38:23 +11:00
smartsign remove outdated cvs $Id strings 2017-02-03 18:41:40 +11:00
sortlist [v9_10] system tests on windows 2016-11-01 09:50:09 -07:00
spf update copyright notice / whitespace 2016-06-14 23:45:50 +00:00
staticstub copyright/whitespace 2016-11-02 10:43:07 +11:00
statistics [v9_10] simplify prereq checks by using feature-test.c 2016-11-01 12:41:48 -07:00
statschannel update copyright notice / whitespace 2017-04-24 23:46:31 +00:00
stress update copyright notice / whitespace 2016-06-14 23:45:50 +00:00
stub update copyright notice / whitespace 2016-06-14 23:45:50 +00:00
tcp update copyright notice / whitespace 2016-08-11 23:46:19 +00:00
tkey copyright/whitespace 2016-11-02 10:43:07 +11:00
tsig Use test random file for tsig test using keygen 2016-06-23 18:56:38 -04:00
tsiggss [v9_10] Move KRB5_CONFIG=/dev/null to conf.sh.* so the named run in the tests gets the setting 2017-10-11 08:51:38 -07:00
unknown [v9_10] system tests on windows 2016-11-01 09:50:09 -07:00
upforwd copyright/whitespace 2016-11-02 10:43:07 +11:00
v6synth update copyright notice / whitespace 2016-06-14 23:45:50 +00:00
verify update copyright notice / whitespace 2017-08-14 23:51:09 +00:00
views update copyright notice / whitespace 2016-06-14 23:45:50 +00:00
wildcard copyright/whitespace 2016-11-02 10:43:07 +11:00
win32 4585. [port] win32: Set CompileAS value. [RT #42474] 2017-04-20 12:43:17 +10:00
xfer [v9_10] Add support for DOA 2017-10-06 12:56:58 +02:00
xferquota copyright/whitespace 2016-11-02 10:43:07 +11:00
zero update copyright notice / whitespace 2017-09-12 23:48:28 +00:00
zonechecks copyright/whitespace 2016-11-02 10:43:07 +11:00
.gitignore [v9_10] simplify prereq checks by using feature-test.c 2016-11-01 12:41:48 -07:00
ans.pl update copyright notice / whitespace 2017-09-12 23:48:28 +00:00
clean.sh perform a more complete cleanup after running system tests [rt41255] 2015-12-16 15:39:52 +11:00
cleanall.sh update copyright notice / whitespace 2015-03-02 23:45:48 +00:00
cleanpkcs11.sh update copyrights 2014-01-16 15:19:24 +11:00
conf.sh.in [v9_10] require writable managed keys directory 2017-10-17 21:35:19 -07:00
conf.sh.win32 set SAMPLEUPDATE under windows; test if SAMPLEUPDATE exists and only run tests if it does 2017-11-11 09:26:07 +11:00
digcomp.pl copyright/whitespace 2016-11-02 10:43:07 +11:00
ditch.pl update copyright notice / whitespace 2015-07-09 23:45:51 +00:00
feature-test.c check the value of s 2016-11-15 16:52:39 +11:00
genzone.sh [v9_10] Add support for DOA 2017-10-06 12:56:58 +02:00
ifconfig.bat [v9_10] system tests on windows 2016-11-01 09:50:09 -07:00
ifconfig.sh copyright/whitespace 2016-11-02 10:43:07 +11:00
Makefile.in [v9_10] make uninstall 2016-11-01 19:35:44 -07:00
org.isc.bind.system update copyright notice 2013-06-13 23:46:13 +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:57 +00:00
README Fix a bug in RPZ that could cause unwanted recursion (#39229) 2015-05-07 08:36:49 +05:30
run.sh report if named.run or named.memstats not removed after successful test 2017-10-24 12:47:53 +11:00
runall.sh update copyright notice / whitespace 2015-12-16 23:45:54 +00:00
send.pl update copyright notice 2012-06-29 23:45:57 +00:00
setup.sh update copyright notice 2014-05-07 23:45:47 +00:00
start.pl update copyright notice / whitespace 2017-05-24 23:46:22 +00:00
start.sh update copyright notice 2012-06-29 23:45:57 +00:00
stop.pl copyright/whitespace 2016-11-02 10:43:07 +11:00
stop.sh update copyright notice 2012-06-29 23:45:57 +00:00
testcrypto.sh update copyright notice / whitespace 2017-07-31 23:47:22 +00:00
testsock.pl update copyright notice 2013-01-09 23:45:53 +00:00
testsock6.pl update copyright notice 2014-04-29 23:45:46 +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
  rpzrecurse/	Another set of RPZ tests to check recursion behavior
  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.