Commit Graph

11307 Commits

Author SHA1 Message Date
Tom Krizek
7dff007ccd Allow nsupdate test rerun on FreeBSD
The "exceeded time limit waiting for literal 'too many DNS UPDATEs
queued' in ns1/named.run" is prone to fail due to a timing issue.
Despite out efforts to stabilize it, the check still often fails on
FreeBSD in our CI. Allow the test to be re-run on this platform.

(cherry picked from commit 124882476b)
2024-01-10 14:52:40 +01:00
Tom Krizek
7132f6b998 Allow statistics test rerun
This test has been unstable for a long while, especially the check
"statistics:verifying active sockets output in named.stats". Allow the
statistics test to be re-run to avoid frequent false positives.
2024-01-10 11:02:55 +01:00
Aram Sargsyan
cdb16a737e Make digdelv test work in different network envs (continued)
This commit complements the 1e7d832342
commit.

(cherry picked from commit 96f63a9f0b)
2024-01-09 14:53:21 +00:00
Tom Krizek
339143e3fc Handle dig timing out gracefully in upforwd
(cherry picked from commit 7b77574b6d)
2024-01-09 10:17:49 +01:00
Tom Krizek
a1b67ff038 Handle dig timing out gracefully in staticstub
(cherry picked from commit cc7c4760aa)
2024-01-09 10:17:49 +01:00
Tom Krizek
d061e2d6ba Handle dig timing out gracefully in sortlist
(cherry picked from commit 2341934f7d)
2024-01-09 10:17:48 +01:00
Tom Krizek
b690a44e55 Handle dig timing out gracefully in rpz
(cherry picked from commit 99799fba60)
2024-01-09 10:17:48 +01:00
Tom Krizek
b51c74f0bb Handle dig timing out gracefully in rootkeysentinel
(cherry picked from commit de569ad97a)
2024-01-09 10:17:48 +01:00
Tom Krizek
9a803cc227 Handle dig timing out gracefully in qmin
(cherry picked from commit 606985d775)
2024-01-09 10:17:48 +01:00
Tom Krizek
db064f3a69 Handle dig timing out gracefully in padding
(cherry picked from commit c983449e5e)
2024-01-09 10:17:47 +01:00
Tom Krizek
dd146c6915 Handle dig timing out gracefully in nsupdate
(cherry picked from commit 3c7291248c)
2024-01-09 10:17:47 +01:00
Tom Krizek
19c1660028 Handle dig timing out gracefully in names
(cherry picked from commit 410aa5aeab)
2024-01-09 10:17:47 +01:00
Tom Krizek
8fcf12ed2a Handle dig timing out gracefully in masterfile
(cherry picked from commit 0bf25138b6)
2024-01-09 10:17:47 +01:00
Tom Krizek
abdce0c8df Handle dig timing out gracefully in logfileconfig
(cherry picked from commit 8ece026848)
2024-01-09 10:17:47 +01:00
Tom Krizek
a0399f1548 Handle dig timing out gracefully in legacy
(cherry picked from commit 2cc90a815e)
2024-01-09 10:17:46 +01:00
Tom Krizek
554992ec59 Handle dig timing out gracefully in keepalive
(cherry picked from commit c6b267ce4d)
2024-01-09 10:17:46 +01:00
Tom Krizek
a2e96ec130 Handle dig timing out gracefully in dnstap
(cherry picked from commit fcce010045)
2024-01-09 10:17:46 +01:00
Tom Krizek
c57798d341 Handle dig timing out gracefully in cookie
(cherry picked from commit 343b3f0f84)
2024-01-09 10:17:46 +01:00
Tom Krizek
b1eab3ca7e Handle dig timing out gracefully in autosign
(cherry picked from commit 445ec7cc0f)
2024-01-09 10:17:44 +01:00
Tom Krizek
c84e34dbbc Handle dig timing out gracefully in auth
(cherry picked from commit ddb41798d5)
2024-01-09 10:06:52 +01:00
Tom Krizek
6dc3ebe494 Handle dig timing out gracefully in allow-query
(cherry picked from commit 0d5df1fc02)
2024-01-09 10:06:52 +01:00
Mark Andrews
db00e1e913 Handle dig timing out gracefully in serve-stale
(cherry picked from commit 4351076d48)
2024-01-09 10:06:49 +01:00
Mark Andrews
3b01b47ac3 Handle dig timing out gracefully in rndc
(cherry picked from commit 02d9f2eeb9)
2024-01-09 10:04:46 +01:00
Tom Krizek
863055767d Add missing dnssec-validation to ns4 in xfer test
This file was missing explicit dnssec-validation. Seems like it was
missed in our previous efforts, probably because of the different
filename / extension. Rename it to end with *.in to reflect that it is a
template file used by copy_setports.

(cherry picked from commit 68234372a5)
2024-01-09 10:02:12 +01:00
Tom Krizek
d2c5a11ae8 Turn off dnssec-validation in nsec&tsig system tests
This is a followup for !8063, which backported !7999. The configuration
file layout for these files have changed (main branch has
named-fips.conf), which is probably why these bits were missed during a
backport.
2024-01-08 18:13:47 +01:00
Tom Krizek
ec3a47fc68 Turn off dnssec validation in inline test
DNSSEC validation isn't required by the inline test and would send
queries to root name servers.

(cherry picked from commit 66d6394057)
2024-01-08 17:30:50 +01:00
Mark Andrews
2c1c7ec639 Stop sending queries to the internet's root servers
Disable automatic dnssec validation.

(cherry picked from commit 15a433cb9d)
2024-01-08 17:30:42 +01:00
Mark Andrews
b831223b3e Support Net::DNS::Nameserver 1.42
In Net::DNS 1.42 $ns->main_loop no longer loops.  Use current methods
for starting the server, wait for SIGTERM then cleanup child processes
using $ns->stop_server(), then remove the pid file.

(cherry picked from commit c2c59dea60)
2024-01-03 11:57:59 +11:00
Mark Andrews
1a52dccd32 Handle multiple NSEC3PARAM records in tests
When transitioning from one NSEC3 chain to another it is legal for
there to be multiple complete chains in the zone with multiple
NSEC3PARAM records.  Handle this intermediate state by checking
for the expected length in the loop.
2024-01-03 09:25:43 +11:00
Matthijs Mekking
b9fc29cb95 Regression check for NSEC3 to NSEC3 conversion
When changing the NSEC3 chain, the new NSEC3 chain must be built before
the old NSEC3PARAM is removed.  Check each delta in the conversion to
ensure this ordering is met.

(cherry picked from commit 1d6b892e04)
2024-01-03 09:25:43 +11:00
Mark Andrews
7e24befc2a Regression check for NSEC3 to NSEC conversion
When transitioning from NSEC3 to NSEC the NSEC3 must be built before
the NSEC3PARAM is removed.  Check each delta in the conversion to
ensure this ordering is met.

(cherry picked from commit 7d90c056b0)
2024-01-03 09:25:43 +11:00
Mark Andrews
38babba214 The NSEC3 -> NSEC private record may be added later
Check each delta for the NSEC3 -> NSEC private record addition
as it may be added in the second delta.

(cherry picked from commit 80a4dff986)
2023-12-20 11:11:12 +11:00
Mark Andrews
15601cca43 Regression check for missing RRSIGs
When transitioning from NSEC3 to NSEC the added records where not
being signed because the wrong time was being used to determine if
a key should be used or not.  Check that these records are actually
signed.

(cherry picked from commit bdb42d3838)
2023-12-19 12:44:27 +11:00
Aram Sargsyan
ba923834b2 Fix a statschannel system test zone loadtime issue
The check_loaded() function compares the zone's loadtime value and
an expected loadtime value, which is based on the zone file's mtime
extracted from the filesystem.

For the secondary zones there may be cases, when the zone file isn't
ready yet before the zone transfer is complete and the zone file is
dumped to the disk, so a so zero value mtime is retrieved.

In such cases wait one second and retry until timeout. Also modify
the affected check to allow a possible difference of the same amount
of seconds as the chosen timeout value.

(cherry picked from commit 4e94ff2541)
2023-12-18 09:34:31 +00:00
Mark Andrews
adfb365602 NetBSD has added 'hmac' to libc so rename our uses of hmac
(cherry picked from commit fd077c2661)
2023-12-14 11:14:04 +11:00
Evan Hunt
374b4d6258 deprecate resolver-retry-interval and resolver-nonbackoff-tries
these options control default timing of retries in the resolver
for experimental purposes; they are not known to useful in production
environments.  they will be removed in the future; for now, we
only log a warning if they are used.

(cherry picked from commit 4aaa4f7dca)
2023-12-06 13:41:47 -08:00
Artem Boldariev
96228d9a08 doth test: add a secondary NS instance that reuses a 'tls' entry
This commit extends the 'doth' system tests with additional secondary
NS instance that reuses the same 'tls' entry for connecting the the
primary to download zones. This configurations were known to crash
secondaries in some cases.

(cherry picked from commit 10e626111f)
2023-12-06 17:07:12 +02:00
Tom Krizek
41ce14f389 Refactor statschannel test to use isctest
Use common utility functions in favor of duplicating the code in a
test-specific file.

(cherry picked from commit 5de2b07daa)
2023-12-05 14:27:41 +01:00
Tom Krizek
1fe70c6095 Add system test utility package isctest
Create a utility package for code shared by the python tests. The
utility functions should use reasonable defaults and be split up into
modules according to their functionality.

Ensure assert rewriting is enabled for the modules to get the most
useful output from pytest.

(cherry picked from commit cba5a1d62c)
2023-12-05 14:27:41 +01:00
Tom Krizek
4e74513c1b Simplify statsport fixture in statschannel test
The ports fixture provides the required port numbers already and there's
no need to get the port number from environment.

(cherry picked from commit f0481c8600)
2023-12-05 14:27:41 +01:00
Tom Krizek
cf81c9e833 Allow assertion message rewrite in statschannel test
By default, the useful assertion message rewrite is used by pytest for
test modules only. Since another module is imported with shared
functionality, ensure it has pytest's assertion message rewriting
enabled to obtain more debug information in case it fails.

(cherry picked from commit a57af8163a)
2023-12-05 14:27:41 +01:00
Tom Krizek
33b61de350 Move helper functions in statchannel into single file
Since dnspython is now a required dependency, there's no need to keep
these two helper files separate.

(cherry picked from commit fc295b2b5d)
2023-12-05 14:27:40 +01:00
Tom Krizek
ad133d4c1c Add assert message to test doth/stress_http_quota.py
This file is executed outside of pytest with pure python, which doesn't
do any AssertionError message rewriting like pytest. Ensure the assert
messages in this file provide a useful debug message.

(cherry picked from commit 767f4670c6)
2023-12-05 14:27:37 +01:00
Michał Kępień
a195d9b126 Do not daemonize named instances with custom args
This enables the "logfileconfig" and "rpzextra" system tests to pass
when named is started under the supervision of rr (USE_RR=1).

(cherry picked from commit 422286e9c2)
2023-12-04 19:30:03 +01:00
Michal Nowak
3bd3dfd187 Fix process listing string of rpzextra ns3 server
(cherry picked from commit 920af590d1)
2023-12-04 19:28:49 +01:00
Michal Nowak
72760c0c2b Add support for recording named runtime with rr
The traces of the named process are stored in the directory
$system_test/nsX/named-Y/.

(cherry picked from commit e088e8a992)
2023-12-04 19:28:05 +01:00
Ondřej Surý
b83b9dc2c6 Remove support for running system tests under Valgrind
Valgrind support has been scarcely used.

(cherry picked from commit 658d62a6f4)
2023-12-04 19:26:25 +01:00
Aram Sargsyan
4181a187a1 Emit "no servers could be reached" also for UDP setup failure
When all the servers are exhausted for UDP setup emit "no servers
could be reached" in udp_ready(). This message can also be emitted
for a recv_done() error and for TCP connection failure similarly.

(cherry picked from commit 4d529ee12a)
2023-12-04 10:39:46 +00:00
Matthijs Mekking
cf23303dd9 Add a DNSSEC policy test case for a special zone
Try to create a key for a zone, and then sign it, that has some special
characters in the name.

(cherry picked from commit 6a4f3ec242)
2023-11-20 12:10:30 +01:00
Mark Andrews
734061ac1b Emit "no servers could be reached" for TCP as well as UDP
When all the servers are exhausted for TCP emit "no servers could
be reached" in tcp_connected.  This message is already emitted for
UDP.

(cherry picked from commit 831efa40d6)
2023-11-20 13:40:19 +11:00