Michał Kępień
ca1049b2f3
Improve the way cache contents are searched for "ns.flushtest.example"
...
During the "check flushtree clears adb correctly" check, expecting
"ns.flushtest.example" to always be the first name in the ADB dump is
fragile, because in a certain corner case "a.root-servers.nil" will be
the first name instead.
As the purpose of the relevant check is to ensure "ns.flushtest.example"
is removed from ADB by "rndc flushtree flushtest.example", search the
entire list of names present in ADB instead of just the first entry when
looking for "ns.flushtest.example".
2018-02-20 13:59:29 +01:00
Michał Kępień
2bbff06d36
Wait until a cache dump completes instead of waiting for a fixed amount of time
...
Dumping the cache is an asynchronous operation, so sleeping for a fixed
amount of time after running "rndc dumpdb" is imperfect as dumping cache
contents may take longer than expected on slower machines. Instead of
always sleeping for 1 second, wait until the "; Dump complete" line
appears in the dump or 10 seconds pass, whichever comes first.
2018-02-20 13:59:28 +01:00
Michał Kępień
aeea1faf01
Do not overwrite cache dumps
...
Unless configured otherwise in named.conf, "rndc dumpdb" causes a cache
dump to be written to a file called "named_dump.db" in the working
directory of the given named instance. Repeatedly using this command
throughout different checks in the cacheclean system test causes cache
dumps for older checks to be overwritten, which hinders failure
diagnosis. Prevent this by moving each cache dump to a check-specific
location after running "rndc dumpdb".
Furthermore, during the "check flushtree clears adb correctly" check,
dump_cache() is called twice without renaming the resulting files.
Prevent the first cache dump from being overwritten by moving it to a
different file before calling "rndc dumpdb" for the second time.
2018-02-20 13:59:27 +01:00
Michał Kępień
01de79b332
Assign an index to each check in the cacheclean system test
...
This will enable storing per-check forensic data, which facilitates
troubleshooting test failures.
2018-02-20 13:59:25 +01:00
Stephen Morris
7bb9a97904
[rt46602] Changes to get tests running on Windows
...
1. Track changes to conf.sh.in in conf.sh.win32
2. Modifications to prevent Windows "Configure" script replacing
the sed "@PORT@" substitution tokens in conf.sh.win32.
3. runall.sh now runs Windows tests sequentially
2018-02-16 16:14:41 +00:00
Stephen Morris
7222c9fc76
[rt46602] Miscellaneous changes to fix rebase issues
2018-02-16 16:14:41 +00:00
Stephen Morris
30cd931a0d
[rt46602] Change name of shell variable holding current test directory
...
It was TESTNAME, but this is an obvious name and was used in one of
the system tests, something that interfered with the content of
progress messages. It is now SYSTESTDIR.
2018-02-16 16:14:40 +00:00
Michał Kępień
2c519531a7
[rt46602] Export environment variables in a portable manner
2018-02-16 16:14:40 +00:00
Michał Kępień
e005fb948d
[rt46602] Sanitize test names to fix "make check" on Solaris
2018-02-16 16:14:40 +00:00
Stephen Morris
3dfb7c17eb
[rt46602] Add .gitignore file for catz
2018-02-16 16:14:40 +00:00
Stephen Morris
59d88ee192
[rt46602] Pass noclean option to Makefile via exported variable
2018-02-16 16:09:49 +00:00
Stephen Morris
23dfa27a84
[rt46602] Mention conf.sh.win32 in instructions for adding a test.
2018-02-16 16:09:49 +00:00
Michał Kępień
f0721de624
[rt46602] Fix various typos, formatting issues and stylistic nits
2018-02-16 16:09:49 +00:00
Michał Kępień
42cf18d239
[rt46602] Remove redundant variable assignment
2018-02-16 16:09:49 +00:00
Michał Kępień
1ac4c3e4e5
[rt46602] named.port is no longer created by setup.sh for allow_query
2018-02-16 16:09:49 +00:00
Michał Kępień
fe1ccafc34
[rt46602] Consistently print usage for runall.sh to stderr
2018-02-16 16:09:49 +00:00
Michał Kępień
0dcee1cad3
[rt46602] Clean up getopts usage
...
Ensure case clauses are in sync with the string passed to getopts.
Remove catch-all clauses as they will never be evaluated.
2018-02-16 16:09:49 +00:00
Michał Kępień
fe51c34df3
[rt46602] Assign default values to variables set by command line options and consistently treat them as integers
2018-02-16 16:09:49 +00:00
Michał Kępień
1960de5530
[rt46602] named.port cannot be ignored by git because it is required to be present by notify/ns4
2018-02-16 16:09:49 +00:00
Michał Kępień
344d05063f
[rt46602] Re-add clean.sh invocation to catz/setup.sh
...
Commit 57aa7b60fd caused catz/setup.sh to no longer call clean.sh, which
results in the catz system test failing on subsequent runs if the first
run is interrupted or fails.
2018-02-16 16:09:49 +00:00
Stephen Morris
451b7309ca
[rt46602] Remove option to format the printed start time of a test
...
There was too much incompatibility between operating systems as to
the allowed options for "date".
2018-02-16 16:09:49 +00:00
Stephen Morris
462766cd76
[rt46602] Escape line ends in shell script variable assignment
...
Escape the line ends in a multi-line variable assignment. Under some
circumstances, substituting the variable caused syntax errors when
used as the list of values in a shell script "for" statement.
2018-02-16 16:09:49 +00:00
Stephen Morris
fb78f82ba1
[rt46602] Fix EXTRAPORT substitutions in copy_setport
...
Fix problems where all EXTRAPORT macros were being replaced by
the EXTRAPORT1 value. (Copy and paste issue.)
2018-02-16 16:09:49 +00:00
Stephen Morris
cdf18a5009
[rt46602] Minor documentation changes
2018-02-16 16:09:49 +00:00
Stephen Morris
7f2d41d4c4
[rt46602] Correct way allow_query test produces RNDC output
2018-02-16 16:09:49 +00:00
Stephen Morris
0855a8a6cc
[rt46602] Simplify the cleanup code
2018-02-16 16:09:48 +00:00
Stephen Morris
f606b17dfb
[rt46602] Extensions to README
...
Added descriptions of how nameservers are started and stopped
during the tests, and how the framework cleans up the files created.
2018-02-16 16:09:31 +00:00
Stephen Morris
b88b508b22
[rt46602] Miscellenous small changes
2018-02-16 15:19:44 +00:00
Stephen Morris
1f07c69f25
[rt46602] Handle echoing of multi-line output from tests
2018-02-16 15:19:44 +00:00
Stephen Morris
c12e06755f
[rt46602] Rename "test" variable to "systest"
...
... to avoid confusion between the variable and the command of the
same name.
2018-02-16 15:19:44 +00:00
Stephen Morris
00bc29640b
[rt46602] Add ability to prevent deletion of output files when running all tests
...
Some tests may need to examine all output files from all system tests.
Allow the deletion of these files to be inhibited if required.
2018-02-16 15:19:44 +00:00
Stephen Morris
244d1c30e2
[rt46602] Error messages before start of test are output to stderr
...
Error messages concerning the invocation of run.sh are output to
stderr. Messages after the test has started are output to stdout.
2018-02-16 15:19:44 +00:00
Stephen Morris
a5cf6bd12a
[rt46602] Ensure that output sent to stderr is routed to the output file
2018-02-16 15:19:44 +00:00
Stephen Morris
ce66752adc
[rt46602] Minor tidying up of documentation
2018-02-16 15:19:44 +00:00
Stephen Morris
549a6c6bc8
[rt46602] Check prerequsities before network interfaces when running test.
2018-02-16 15:19:44 +00:00
Stephen Morris
f0f5b5f045
[rt46602] Minor formatting changes to Perl files
2018-02-16 15:19:44 +00:00
Stephen Morris
c344e1d768
[rt46603] Provide echostart() and echoend() to output test start/end messages.
2018-02-16 15:19:44 +00:00
Stephen Morris
055e5be9fd
[rt46602] Ensure test output in systests.output is not mixed up
...
When running all the system tests, output from a test is sent to a
test.output file in the test directory. These are combined in to
systests.output when the run finishes.
2018-02-16 15:19:44 +00:00
Stephen Morris
3c25e5fa02
[rt46602] Miscellaneous minor fixes
...
... for misspellings, typos, trailing spaces, duplicated lines etc.
2018-02-16 15:19:43 +00:00
Stephen Morris
edc7a18d84
[rt46602] Allocate 100 ports to each test
2018-02-16 15:19:43 +00:00
Stephen Morris
f5d8f07900
[rt46602] Pass port numbers to tests via environment variables
2018-02-16 15:19:43 +00:00
Stephen Morris
b2d90da0c2
[rt46602] Ensure parallel tests are in alphabetical order
2018-02-16 15:19:43 +00:00
Stephen Morris
af005cdbcf
[rt46602] Expanded system tests README
...
Add more information on running the tests, together with a section
on how the tests are organised, aimed at new developers.
2018-02-16 15:19:43 +00:00
Stephen Morris
b24c2e11d8
[rt46602] More updates to the test running framework
...
Tidy up the stop/start files and make switch usage consistent. Also
tidy up the various "clean" targets in the Makefile.
2018-02-16 14:57:52 +00:00
Stephen Morris
517d990bd4
[rt46602] Modify some test files to cope with the "-p" flag
2018-02-16 14:57:51 +00:00
Stephen Morris
32fe6f7682
[rt46602] Tidy up run management
...
Miscellaneous tidying up of run management. The most significant
change is that "runall.sh" now runs _all_ the tests, even the
ones that can run in parallel. runsequential.sh is the script
to run tests that have not been converted to parallel running.
2018-02-16 14:57:51 +00:00
Stephen Morris
e0ff77f9d3
[rt46602] Assign block of ports for each test
...
Some tests use more ports than just the query and control ports.
Each test that can run in parallel with other tests is now assigned
a unique block of 10 ports.
2018-02-16 14:57:51 +00:00
Stephen Morris
07341693e1
[rt46602] Allow catz system test to run in parallel with other tests
2018-02-16 14:57:51 +00:00
Stephen Morris
78f2b9ca01
[rt46602] Miscellaneous changes to existing parallelised tests
...
Currently these tests are allow_query, rpzrecurse and serve-stale
1. Function to copy files and set port numbers renamed from copy_config
to copy_setports, as this is used to change the ports in Perl and Python
test scripts as well.
2. Changes to rpzrecurse/tests.sh to handle two calls to getopts (one to
parse port numbers, the other to parse rpzrecurse-specific options). Also
fixed various commands to use correct ports.
3. Updates to "clean.sh" scripts to ensure that all files created in the
test are removed.
2018-02-16 14:57:51 +00:00
Stephen Morris
e7429b124b
[rt46602] Ensure that tests running in parallel use unique ports
...
Via an intermediate make file, tests that have been modified to be able
to run in parallel are assigned unique query and control port numbers
(other than 5300 and 9953 respectively). Tests that have not yet been
modified all use ports 5300 and 9953, so must be run sequentially.
2018-02-16 14:57:51 +00:00
Stephen Morris
e1a69e5d1f
[rt46602] Miscellaneous tidying up of code cherry-picked from experimental branch
2018-02-16 14:57:51 +00:00
Ondřej Surý
3b14d54fd7
[rt46602] Allow parallel run of new dynamic port tests and the old ones
2018-02-16 14:57:51 +00:00
Ondřej Surý
caaec1ef6d
[rt46602] Put back original .gitignore files in the system tests
2018-02-16 14:57:51 +00:00
Ondřej Surý
2a435708e4
[rt46602] Adjust rpzrecurse for dynamic port usage
...
Resolve conflict in run.sh during cherry-pick from an experimental branch.
2018-02-16 14:57:51 +00:00
Ondřej Surý
e6802badc0
[rt46602] Add $SEDPORTS variable to help with @PORT@ and @CONTROLPORT@ replacement
2018-02-16 14:57:51 +00:00
Ondřej Surý
d2c8286163
[rt46602] Move most of ignored files to top of system tests directory
2018-02-16 14:57:51 +00:00
Ondřej Surý
53bade5ece
[rt46602] Fix output from rndc reload
2018-02-16 14:57:51 +00:00
Ondřej Surý
bc276f6c05
[rt46602] Add .gitignore to allow_query
2018-02-16 14:57:51 +00:00
Ondřej Surý
7e3c96c867
[rt46602] Utilize echo_i to allow mixed test output
2018-02-16 14:57:51 +00:00
Ondřej Surý
278c72fef6
[rt46602] Prefix R:<result> as R:<test>:<result>
...
Resolve conflict in run.sh during cherry-pick from experimental branch.
2018-02-16 14:57:50 +00:00
Ondřej Surý
f7ac41757a
[rt46602] Add echo_i function to print I:<testname>:string
2018-02-16 14:57:50 +00:00
Ondřej Surý
cba162e70e
[rt46602] Add serve-stale working files to .gitignore
2018-02-16 14:57:50 +00:00
Ondřej Surý
992a2bafec
[rt46602] Convert allow_query to dynamic port
2018-02-16 14:57:50 +00:00
Ondřej Surý
f83ebd34b9
[rt46602] Update server-stale test to run on port passed from run.sh script
2018-02-16 14:57:50 +00:00
Ondřej Surý
fb00f18005
[rt46602] Change the system tests script to support running individual tests on different ports
...
Resolved conflict in run.sh.
2018-02-16 14:57:50 +00:00
Mark Andrews
865115f30c
use %u instead of %d
2018-02-16 10:20:38 +11:00
Ondřej Surý
4ff2d36adc
Remove whole unused ondestroy callback mechanism
2018-02-12 14:49:32 +01:00
Evan Hunt
313e73354d
[master] copyrights
2018-02-10 16:30:21 -08:00
Mark Andrews
faba523a40
check warning text
...
(cherry picked from commit c6cd108838 )
2018-02-09 14:05:28 +11:00
Mark Andrews
ae09500989
get the correct test file
2018-02-09 13:57:10 +11:00
Evan Hunt
79a2e86827
[master] fix test error
2018-02-08 18:45:46 -08:00
Mark Andrews
baef0ca988
4889. [func] Warn about the use of old root keys without the new
...
root key being present. Warn about dlv.isc.org's
key being present. Warn about both managed and
trusted root keys being present. [RT #43670 ]
2018-02-09 12:04:45 +11:00
Tinderbox User
02ce048c91
update copyright notice / whitespace
2018-02-08 23:46:17 +00:00
Mark Andrews
ecf6dcc5c6
[master] fix rpzrecurse test on windows
...
4887. [test] Enable the rpzrecurse test to run on Windows.
[RT #47093 ]
2018-02-08 13:28:40 -08:00
Tinderbox User
2fac9b0be6
update copyright notice / whitespace
2018-02-07 23:45:53 +00:00
Mark Andrews
ec771bbdc8
4885. [security] update-policy rules that otherwise ignore the name
...
field now require that it be set to "." to ensure
that any type list present is properly interpreted.
[RT #47126 ]
2018-02-07 13:34:02 +11:00
Tinderbox User
ffac31097d
update copyright notice / whitespace
2018-01-30 23:45:59 +00:00
Mark Andrews
a2c693ab3b
handle different eol coventions
2018-01-31 10:05:40 +11:00
Mark Andrews
d26f90241d
4880. [bug] Named wasn't returning the target of a cross zone
...
CNAME between to served zones when recursion was
desired and available (RD=1, RA=1). Don't return
the CNAME target otherwise to prevent accidental
cache poisoning. [RT #47078 ]
2018-01-30 13:10:06 +11:00
Mark Andrews
8d1b3f5e6a
dns_dnssec_findmatchingkeys warning test requires crytpo to be supported
2018-01-29 16:35:56 +11:00
Tinderbox User
3fda67b596
update copyright notice / whitespace
2018-01-22 23:46:02 +00:00
Mukund Sivaraman
8a4ce20172
Don't permit loading meta RR types such as TKEY from master files ( #47009 )
2018-01-22 14:26:04 +05:30
Tinderbox User
19b7c0494e
update copyright notice / whitespace
2018-01-19 23:45:58 +00:00
Evan Hunt
80788e72d0
[master] remove HMAC support from dnssec-keygen
...
4868. [func] dnssec-keygen can no longer generate HMAC keys.
Use tsig-keygen instead. [RT #46404 ]
2018-01-18 17:29:28 -08:00
Tinderbox User
ed9fea3a6e
update copyright notice / whitespace
2018-01-15 23:46:16 +00:00
Michał Kępień
ae51a676c9
[master] Ensure all master definitions in a catalog zone contain an IP address
...
4864. [bug] named acting as a slave for a catalog zone crashed if
the latter contained a master definition without an IP
address. [RT #45999 ]
2018-01-15 20:50:09 +01:00
Tinderbox User
6d1f45ed81
update copyright notice / whitespace
2018-01-13 23:46:00 +00:00
Mark Andrews
69c4c987f6
ret was not being set to 1 on dig error. [RT #46990 ]
2018-01-13 13:14:42 +11:00
Tinderbox User
47f617f8b2
update copyright notice / whitespace
2018-01-08 23:45:54 +00:00
Mark Andrews
3a4ea455ed
add ns5/
2018-01-08 16:28:04 +11:00
Mark Andrews
02d3f1e855
write nextpart to disk so that it is available when tests fail
2018-01-08 16:20:38 +11:00
Mark Andrews
eed2f6cef0
4857. [bug] Maintain attach/detach semantics for event->db,
...
event->node, event->rdataset and event->sigrdataset
in query.c. [RT #46891 ]
2018-01-04 10:48:18 +11:00
Tinderbox User
a280a7871d
update copyright notice / whitespace
2018-01-03 23:45:29 +00:00
Mark Andrews
0b27aa0712
4856. [bug] 'rndc zonestatus' reported the wrong underlying type
...
for a inline slave zone. [RT #46875 ]
2018-01-04 10:10:05 +11:00
Mark Andrews
4674127443
wait for status: line to be readable, before checking status
2018-01-03 13:54:26 +11:00
Mark Andrews
9bec7facfb
4850. [bug] Named failed to restart with multiple added zones in
...
lmdb database. [RT #46889 ]
2017-12-27 16:24:33 +11:00
Mark Andrews
f5d429e7c3
save why ydump.py failed
2017-12-22 16:02:39 +11:00
Mark Andrews
be5a0eaa7a
add POST(argc);
2017-12-22 08:48:38 +11:00
Mark Andrews
d11ada1376
add POST(argv); and POST(argc);
2017-12-22 08:43:49 +11:00
Tinderbox User
dcc059e2c9
update copyright notice / whitespace
2017-12-20 23:45:50 +00:00