2
0
mirror of https://gitlab.isc.org/isc-projects/bind9 synced 2025-09-02 15:45:25 +00:00
Commit Graph

41111 Commits

Author SHA1 Message Date
Matthijs Mekking
75e0d394dd dnssec-policy: refuse to load non-zero iterations
According to RFC 9276, if NSEC3 must be used, then an iterations count
of 0 MUST be used to alleviate computational burdens.
2023-12-05 14:58:58 +00:00
Tom Krizek
336d99f121 Merge branch '4452-pytest-improve-assert-messages' into 'main'
Improve assert messages in pytests

Closes #4452

See merge request isc-projects/bind9!8518
2023-12-05 13:00:07 +00:00
Tom Krizek
5de2b07daa Refactor statschannel test to use isctest
Use common utility functions in favor of duplicating the code in a
test-specific file.
2023-12-05 13:26:49 +01:00
Tom Krizek
cba5a1d62c 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.
2023-12-05 13:26:49 +01:00
Tom Krizek
f0481c8600 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.
2023-12-05 13:26:49 +01:00
Tom Krizek
a57af8163a 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.
2023-12-05 13:26:49 +01:00
Tom Krizek
fc295b2b5d 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.
2023-12-05 13:26:49 +01:00
Tom Krizek
767f4670c6 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.
2023-12-05 13:26:43 +01:00
Mark Andrews
64ef6968f3 Merge branch '4462-crash-on-shutdown-when-dnssec-validation-is-running-ensure-isc_mempool_getallocated-namepoolp' into 'main'
Resolve "Crash on shutdown when DNSSEC validation is running: ENSURE(isc_mempool_getallocated(*namepoolp) == 0) failed"

Closes #4462 and #4384

See merge request isc-projects/bind9!8526
2023-12-04 22:55:50 +00:00
Mark Andrews
7ee20d7d10 Destroy the message before detaching the view
With shared name memory pools (f5af981831)
the message needs to be destroyed before the view is detached which
in turn detaches the resolver which checks that all resources have
been returned.
2023-12-04 22:00:25 +00:00
Mark Andrews
f491845f5a Merge branch '4457-dig-crashes-after-sigint-if-there-are-multiple-queries' into 'main'
Resolve "dig crashes after SIGINT if there are multiple queries"

Closes #4457

See merge request isc-projects/bind9!8527
2023-12-04 21:10:00 +00:00
Mark Andrews
da8a269daf Add CHANGES note for [GL #4457] 2023-12-05 07:31:19 +11:00
Mark Andrews
69f7048c89 Handle ISC_R_SHUTTINGDOWN in dighost.c:recv_done
When dighost.c:recv_done is called with ISC_R_SHUTTINGDOWN cancel
all outstanding lookups as this indicates SIGTERM was recieved.
2023-12-05 07:30:52 +11:00
Michal Nowak
c21fbed5d4 Merge branch '3198-add-rr-record' into 'main'
Add support for recording named with rr

Closes #3198

See merge request isc-projects/bind9!8479
2023-12-04 18:53:07 +00:00
Michał Kępień
422286e9c2 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).
2023-12-04 18:40:52 +01:00
Michal Nowak
920af590d1 Fix process listing string of rpzextra ns3 server 2023-12-04 18:39:28 +01:00
Michal Nowak
e088e8a992 Add support for recording named runtime with rr
The traces of the named process are stored in the directory
$system_test/nsX/named-Y/.
2023-12-04 18:38:29 +01:00
Ondřej Surý
658d62a6f4 Remove support for running system tests under Valgrind
Valgrind support has been scarcely used.
2023-12-04 18:27:51 +01:00
Michal Nowak
d05c2e7ff4 Merge branch 'mnowak/freebsd-14.0' into 'main'
Add FreeBSD 14.0

See merge request isc-projects/bind9!8520
2023-12-04 15:26:56 +00:00
Michal Nowak
9152fc40a8 Add FreeBSD 14.0 2023-12-04 15:42:24 +01:00
Arаm Sаrgsyаn
acf55e125e Merge branch '1229-dig-no-yaml-output-when-host-is-unreachable' into 'main'
Resolve "No YAML output in dig when host is unreachable"

Closes #1229

See merge request isc-projects/bind9!8501
2023-12-04 10:38:46 +00:00
Aram Sargsyan
ed879c41f2 Add a CHANGES note for [GL #1229] 2023-12-04 10:38:16 +00:00
Aram Sargsyan
4d529ee12a 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.
2023-12-04 10:38:16 +00:00
Petr Špaček
2a14fa0a65 Merge branch '4417-stale-hyperlinks-in-the-arm' into 'main'
Fix stale hyperlinks in the ARM

Closes #4417

See merge request isc-projects/bind9!8525
2023-12-04 10:00:57 +00:00
Suzanne Goldlust
15eea792b9 Fix broken link to TLD DNSSEC stats 2023-12-04 10:00:30 +00:00
Suzanne Goldlust
1482f5b1ed Fix broken link to OMB memo 2023-12-04 10:00:30 +00:00
Tom Krizek
ae349ef2e8 Merge branch '4251-remove-legacy-test-runner' into 'main'
Remove legacy system test runner

Closes #4251

See merge request isc-projects/bind9!8514
2023-12-01 14:21:34 +00:00
Tom Krizek
1e181cf61d Remove -U 4 from system tests
This option doesn't appear to be needed for any of the tests, so remove
it to keep things simple.
2023-12-01 14:03:35 +01:00
Tom Krizek
519e77d067 Add CHANGES note for [GL #4251] 2023-12-01 14:03:34 +01:00
Tom Krizek
fba295600b Update system test documentation
Rewrite and reorganize the test documentation to focus on the pytest
runner, omit any mentions of the legacy runner which are no longer
relevant, and mention a few pytest tricks.
2023-12-01 14:03:33 +01:00
Tom Krizek
3e26d99c3c Remove obsolete system test lists
These were used by deleted legacy runner utility scripts.
2023-12-01 13:47:29 +01:00
Tom Krizek
910440d9b6 Remove legacy runner control scripts
These scripts have been used exclusively by the legacy test runner and
they're no longer needed.
2023-12-01 13:47:27 +01:00
Ondřej Surý
235659b95a Merge branch '4451-use-only-single-method-for-overmem-condition' into 'main'
Refactor the handling of isc_mem overmem condition

Closes #4451

See merge request isc-projects/bind9!8523
2023-11-29 13:21:09 +00:00
Ondřej Surý
022f1d8573 Add CHANGES note for [GL #4451] 2023-11-29 14:16:20 +01:00
Ondřej Surý
0b865c781a Add isc_mem_overmem unit test
The new unit isc_mem_overmem unit test sets hi and lo water marks and
then does allocations to go over:

0. x < lo_water
1. lo_water < x < hi_water
2. x > hi_water
3. lo_water < x < hi_water
4. < lo_water
2023-11-29 14:16:20 +01:00
Ondřej Surý
3383331d06 Cleanup unused stats_bucket() macro 2023-11-29 14:16:20 +01:00
Ondřej Surý
14bdd21e0a Refactor the handling of isc_mem overmem condition
Previously, there were two methods of working with the overmem
condition:

1. hi/lo water callback - when the overmem condition was reached
   for the first time, the water callback was called with HIWATER
   mark and .is_overmem boolean was set internally.  Similarly,
   when the used memory went below the lo water mark, the water
   callback would be called with LOWATER mark and .is_overmem
   was reset.  This check would be called **every** time memory
   was allocated or freed.

2. isc_mem_isovermem() - a simple getter for the internal
   .is_overmem flag

This commit refactors removes the first method and move the hi/lo water
checks to the isc_mem_isovermem() function, thus we now have only a
single method of checking overmem condition and the check for hi/lo
water is removed from the hot path for memory contexts that doesn't use
overmem checks.
2023-11-29 14:16:20 +01:00
Michal Nowak
669800342d Merge branch 'mnowak/drop-named-alt3.conf.in-leftover' into 'main'
Drop the last remnant of ns2/named-alt3.conf.in

See merge request isc-projects/bind9!8506
2023-11-28 20:15:10 +00:00
Matthijs Mekking
00fa7483b9 Renumber the ns2/named-alt*.conf.in files
Now that some configuration input files have been removed, rename
the filenames.
2023-11-28 17:03:08 +01:00
Matthijs Mekking
3119164e29 Drop ns2/named-alt1.conf.in and ns2/named-alt2.conf.in
These files were not being used in the system test.
2023-11-28 17:03:08 +01:00
Michal Nowak
236e5bf519 Drop the last remnant of ns2/named-alt3.conf.in
The ns2/named-alt3.conf.in config file was removed in
f8e264ba6d. From then on, system test
reports:

    sed: can't read ns2/named-alt3.conf.in: No such file or directory"

Drop the last remnant of ns2/named-alt3.conf.in.
2023-11-28 17:03:08 +01:00
Michał Kępień
de2009e3c2 Merge branch 'michal/minor-gitlab-ci-cleanup' into 'main'
Minor GitLab CI cleanup

See merge request isc-projects/bind9!8505
2023-11-21 09:29:09 +00:00
Michał Kępień
192cceba5a Move job definitions to the proper place
The definitions of the "ci-variables" and "cross-version-config-tests"
GitLab CI jobs were accidentally added in the .gitlab-ci.yml section
that claims to only contain job templates.  Move the definitions of
these two jobs to a more appropriate location in .gitlab-ci.yml, without
changing the job definitions themselves.
2023-11-21 10:18:52 +01:00
Michał Kępień
832c7d4396 Drop the TARBALL_EXTENSION variable
All currently supported BIND 9 branches use xz-packed tarballs for
source code distribution.  Having a variable with a lengthy name that
only holds two characters does not improve readability - it was only
useful for maintaining .gitlab-ci.yml consistency between BIND 9.11 and
all the newer branches, but that era has come to an end a while ago.

Replace all occurrences of the TARBALL_EXTENSION variable in
.gitlab-ci.yml with a fixed string ("xz") to simplify the contents of
that file.
2023-11-21 10:18:52 +01:00
Mark Andrews
a1da698103 Merge branch '4432-pointers-dereferenced-before-being-checked' into 'main'
Resolve "Pointers Dereferenced before Being Checked"

Closes #4432

See merge request isc-projects/bind9!8508
2023-11-21 05:40:17 +00:00
Mark Andrews
decc17d3b0 Ineffective DbC protections
Dereference before NULL checks.  Thanks to Eric Sesterhenn from X41
D-Sec GmbH for reporting this.
2023-11-21 14:48:43 +11:00
Matthijs Mekking
a819d36446 Merge branch 'matthijs-lexopt-escape-public-key' into 'main'
Recognize escapes when reading the public key

See merge request isc-projects/bind9!8502
2023-11-20 08:48:06 +00:00
Matthijs Mekking
53657591fa Add CHANGES 2023-11-20 08:32:29 +01:00
Matthijs Mekking
6a4f3ec242 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.
2023-11-20 08:31:39 +01:00
Matthijs Mekking
71f023a1c3 Recognize escapes when reading the public key
Escapes are valid in DNS names, and should be recognized when reading
the public key from disk.
2023-11-20 08:31:39 +01:00