2
0
mirror of https://gitlab.isc.org/isc-projects/bind9 synced 2025-08-28 21:17:54 +00:00

41111 Commits

Author SHA1 Message Date
Petr Špaček
1076bd3c78 Add release note for GL #4552 2024-04-02 17:31:42 +02:00
Petr Špaček
bf92e16c0e Prepare release notes for BIND 9.19.23 2024-04-02 17:31:42 +02:00
Ondřej Surý
ae2b59bfe7 Merge branch '4446-deprecate-fixed-rrset-order' into 'main'
Deprecate fixed value for the rrset-order option

Closes #4446

See merge request isc-projects/bind9!8808
2024-04-02 15:21:10 +00:00
Ondřej Surý
792ac13d60 Add CHANGES and release note for [GL #4446] 2024-04-02 15:21:00 +00:00
Ondřej Surý
304b5ec1ad Deprecate fixed value for the rrset-order option
Mark the "fixed" value for the "rrset-order" option deprecated, so we
can remove it in the future.
2024-04-02 15:21:00 +00:00
Ondřej Surý
bf538b63a8 Merge branch '4593-deprecate-sortlist' into 'main'
Deprecate sortlist option

Closes #4593

See merge request isc-projects/bind9!8807
2024-04-02 15:13:26 +00:00
Ondřej Surý
dfefc89b7e
Add CHANGES and release note for [GL #4593] 2024-04-02 16:27:03 +02:00
Ondřej Surý
7c96bf3e71
Deprecate sortlist option
Mark the sortlist option deprecated, so we can remove it in the
future.
2024-04-02 16:26:39 +02:00
Ondřej Surý
b7b69d9cf0 Merge branch '4654-validator-invalid-name' into 'main'
Rename and fix dns_validator_destroy()

Closes #4654

See merge request isc-projects/bind9!8933
2024-04-02 14:22:55 +00:00
Aram Sargsyan
88d826ac5d
Add a CHANGES note for [GL #4654] 2024-04-02 16:21:54 +02:00
Aram Sargsyan
a5ea7bcd25
Rename and fix dns_validator_destroy() to dns_validator_shutdown()
Since the dns_validator_destroy() function doesn't guarantee that
it destroys the validator, rename it to dns_validator_shutdown()
and require explicit dns_validator_detach() to follow.

Enforce the documented function requirement that the validator must
be completed when the function is called.

Make sure to set val->name to NULL when the function is called,
so that the owner of the validator may destroy the name, even if
the validator is not destroyed immediately. This should be safe,
because the name can be used further only for logging by the
offloaded work callbacks when they detect that the validator is
already canceled/complete, and the logging function has a condition
to use the name only when it is non-NULL.
2024-04-02 16:21:54 +02:00
Aram Sargsyan
a6c6ad048d Remove a redundant log message and a comment
If val->result is not ISC_R_SUCCESS, a similar message is logged
further down in the function. Remove the redundant log message.

Also remove an unnecessary code comment line.
2024-04-02 10:34:31 +00:00
Ondřej Surý
424cb59a43 Merge branch 'each-isc-loop' into 'main'
use a thread-local variable to get the current running loop

See merge request isc-projects/bind9!8911
2024-04-02 09:49:06 +00:00
Ondřej Surý
cad6292fc4 Merge branch '4652-dname-assertion' into 'main'
fix crash from NS target below DNAME

Closes #4652

See merge request isc-projects/bind9!8931
2024-04-02 08:36:08 +00:00
Evan Hunt
63659e2e3a
complete removal of isc_loop_current()
isc_loop() can now take its place.

This also requires changes to the test harness - instead of running the
setup and teardown outside of th main loop, we now schedule the setup
and teardown to run on the loop (via isc_loop_setup() and
isc_loop_teardown()) - this is needed because the new the isc_loop()
call has to be run on the active event loop, but previously the
isc_loop_current() (and the variants like isc_loop_main()) would work
even outside of the loop because it needed just isc_tid() to work, but
not the full loop (which was mainly true for the main thread).
2024-04-02 10:35:56 +02:00
Evan Hunt
c47fa689d4
use a thread-local variable to get the current running loop
if we had a method to get the running loop, similar to how
isc_tid() gets the current thread ID, we can simplify loop
and loopmgr initialization.

remove most uses of isc_loop_current() in favor of isc_loop().
in some places where that was the only reason to pass loopmgr,
remove loopmgr from the function parameters.
2024-04-02 10:35:56 +02:00
Evan Hunt
f95b890759
Add CHANGES note for [GL #4652] 2024-04-02 10:00:17 +02:00
Evan Hunt
ea6659a5e9
update foundname when detecting a zonecut above qname
an assertion could be triggered in the QPDB cache if a DNAME
was found above a queried NS, because the 'foundname' value was
not correctly updated to point to the zone cut.

the same mistake existed in qpzone and has been fixed there as well.
2024-04-02 10:00:03 +02:00
Evan Hunt
b4cc46de07
add a test for handling illegal NS below DNAME
an assertion could be triggered in the QPDB cache if an NS
was encountered that pointed to a name below a DNAME.
2024-04-02 10:00:03 +02:00
Ondřej Surý
183b3cb6aa Merge branch 'ondrej/placeholder' into 'main'
Add placeholder

See merge request isc-projects/bind9!8932
2024-04-02 07:18:53 +00:00
Ondřej Surý
40a6efae01 Add placeholder 2024-04-02 09:16:39 +02:00
Michał Kępień
86d5981dcd Merge branch 'michal/extract-changes-checks-to-a-separate-gitlab-ci-job' into 'main'
Extract CHANGES checks to a separate GitLab CI job

See merge request isc-projects/bind9!8918
2024-03-29 07:29:59 +00:00
Michał Kępień
a7ece8e0bd Restore consistency in YAML anchor names
Commit a4e9ce500a42d596e64c477df66c9bcdd692b06b added "pipelines" to CI
job trigger lists without updating the names of the YAML anchors
containing those lists accordingly.  Update YAML anchor names so that
they are consistent with their own contents.
2024-03-29 08:27:49 +01:00
Michał Kępień
8c2503947f Do not check CHANGES in pre-release pipelines
Since pre-release testing is usually carried out for branches in which
CHANGES entries are intentionally malformed to prevent entry numbering
conflicts down the road, do not run the "changes" GitLab CI job in
pipelines that are triggered by a parent pipeline (which can currently
only be a pre-release testing pipeline) to prevent triggering job
failures that would be meaningless anyway.
2024-03-29 08:27:49 +01:00
Michał Kępień
1335e139f2 Extract CHANGES checks to a separate GitLab CI job
Checking the contents of the CHANGES file currently requires invoking
multiple shell scripts.  These invocations are conflated with those for
other test scripts in the "misc" GitLab CI job.  Extract the commands
checking the contents of the CHANGES file to a separate GitLab CI job,
"changes", to improve readability.  Remove similar checks for the
CHANGES.SE file altogether as they are only relevant for BIND -S and
therefore should not be present in an open source branch.
2024-03-29 08:27:49 +01:00
Michał Kępień
7b5b3a842b Merge branch '4281-CVE-2023-5517-test' into 'main'
[CVE-2023-5517] Check nxdomain-redirect against built-in RFC-1918 zone

Closes #4281

See merge request isc-projects/bind9!8919
2024-03-28 13:42:02 +00:00
Mark Andrews
2789906ce4 Checking nxdomain-redirect against built-in RFC-1918 zone
Check that RFC 1918 leak detection does not trigger an assertion
when nxdomain redirection is enabled in the server but not for the
RFC 1918 reverse namespace.
2024-03-28 13:15:45 +01:00
Michal Nowak
0371223343 Merge branch 'mnowak/freebsd-use-mit-kerberos5' into 'main'
Build FreeBSD with MIT Kerberos5 instead of Heimdal

See merge request isc-projects/bind9!8906
2024-03-27 08:15:26 +00:00
Michal Nowak
d6df757fdc
Build FreeBSD with MIT Kerberos5 instead of Heimdal
tsiggss system tests crash or are unstable with the base FreeBSD
(Heimdal-based) GSS-API.
2024-03-26 18:13:40 +01:00
Michal Nowak
f0800501c7 Merge branch 'mnowak/revert-05b09f2b5bb68a916288f56bf627babad4055b90' into 'main'
Revert "Work around a TSAN issue with newer kernels"

Closes #4649

See merge request isc-projects/bind9!8905
2024-03-25 13:45:39 +00:00
Michal Nowak
aba16af556
Revert "Work around a TSAN issue with newer kernels"
This reverts commit 05b09f2b5bb68a916288f56bf627babad4055b90.

The workaround has been moved to the AMI image (isc-private/packer!10).
2024-03-25 14:38:12 +01:00
Matthijs Mekking
af220a5b72 Merge branch '4622-qp-hang-in-fix-iterator' into 'main'
Fix fix_iterator hang

Closes #4622 and #4632

See merge request isc-projects/bind9!8881
2024-03-25 10:53:36 +00:00
Matthijs Mekking
77d4bb9751 Fix fix_iterator hang
If there are no more previous leaves, it means the queried name
precedes the entire range of names in the database, so we should just
move the iterator one step back and return, instead of continuing our
search for the predecessor.

This is similar to an earlier bug fixed in an earlier commit:

    ea9a8cb392ff59438a911485742b220d40f24d6f
2024-03-25 10:40:23 +01:00
Matthijs Mekking
2a724a808d Add a test case for fix_iterator hang
When fixing the iterator, when every leaf on this branch is greater
than the one we wanted we go back to the parent branch and iterate back
to the predecessor from that point.

But if there are no more previous leafs, it means the queried name
precedes the entire range of names in the database, so we would just
move the iterator one step back and continue from there.

This could end in a loop because the queried name precedes the entire
range of names and so none of those names are the predecessor of the
queried name.
2024-03-25 10:40:23 +01:00
Petr Špaček
948a89d591 Merge branch 'pspacek/hazard-improvements' into 'main'
CI hazard improvements

See merge request isc-projects/bind9!8843
2024-03-21 16:57:12 +00:00
Michał Kępień
5e02a007ca Warn if security fixes are not marked for testing 2024-03-21 17:38:57 +01:00
Petr Špaček
0ba29730f7 Warn about release notes without CHANGES entry 2024-03-21 17:38:57 +01:00
Petr Špaček
82cfb48295 Detect change in supported RR types and issue Hazard warning 2024-03-21 17:38:57 +01:00
Tom Krizek
087e7b590f Merge branch '4605-re-enable-enginepkcs11-test' into 'main'
Re-enable enginepkcs11 system test

Closes #4605

See merge request isc-projects/bind9!8888
2024-03-21 16:36:13 +00:00
Tom Krizek
d1f1b6a934
Mark the enginepkcs11 test as flaky
There are frequent intermittent failures due to "crypto failure".
2024-03-21 16:25:02 +01:00
Tom Krizek
3712a219cb
Re-enable enginepkcs11 system test
The condition in prereq.sh which attempts to match two string uses
integer equality operation. This results in an error, causing the
enginepkcs11 test to always be skipped. Use = operator for the string
comparison instead.
2024-03-21 16:25:00 +01:00
Tom Krizek
da39dffd08 Merge branch 'tkrizek/autosign-flaky' into 'main'
Mark the autosign system test as flaky

Closes #4247 and #1565

See merge request isc-projects/bind9!8867
2024-03-21 15:23:27 +00:00
Tom Krizek
a061fd67f6
Mark the autosign system test as flaky
The autosign test uses sleep in many cases to wait for something to
happen. This inevitably leads to an instability that manifests in our
CI. Allow an automatic rerun of the test to improve its stability.
2024-03-21 15:26:28 +01:00
Tom Krizek
32e7e0a8ee Merge branch 'tkrizek/resolver-test-export-home' into 'main'
Export variable in resolver system test

See merge request isc-projects/bind9!8799
2024-03-21 13:14:52 +00:00
Tom Krizek
86a192cece
Export variable in resolver system test
Variable assignment when calling subroutines might not be portable.
Notably, it doesn't work with FreeBSD shell, where the value of HOME
would be ignored in this case.

Since the commands are already executed in a subshell, export the HOME
variable to ensure it is properly handled in all shells.
2024-03-21 13:25:00 +01:00
Michał Kępień
b1ebd49f3a Merge branch 'michal/add-pipelines-to-ci-job-trigger-lists' into 'main'
Add "pipelines" to CI job trigger lists

See merge request isc-projects/bind9!8884
2024-03-21 11:29:53 +00:00
Michał Kępień
a4e9ce500a Add "pipelines" to CI job trigger lists
To enable GitLab CI jobs in other projects to trigger pipelines in the
BIND 9 project using their CI_JOB_TOKEN, add "pipelines" to the relevant
GitLab CI job trigger lists.
2024-03-21 12:29:21 +01:00
Petr Špaček
225d986cdf Merge branch '4649-work-around-a-tsan-issue-with-newer-kernels' into 'main'
Work around a TSAN issue with newer kernels

Closes #4649

See merge request isc-projects/bind9!8893
2024-03-21 07:59:46 +00:00
Michał Kępień
05b09f2b5b Work around a TSAN issue with newer kernels
The ThreadSanitizer version currently available from Fedora 39
repositories is unable to cope with very high ASLR entropy, which is the
default in some recent Linux distributions [1].  This causes all
TSAN-enabled builds to fail on the affected systems with an error like:

    FATAL: ThreadSanitizer: unexpected memory mapping 0x7d00e0772000-0x7d00e0c00000

Work around the problem by reducing ASLR entropy for all TSAN-enabled
builds until the problem is resolved upstream.

[1] https://github.com/google/sanitizers/issues/1716
2024-03-21 06:47:29 +01:00
Mark Andrews
ab441581b5 Merge branch '4640-checkzone-in-system-test-leaks-queries' into 'main'
Resolve "Checkzone in system test leaks queries"

Closes #4640

See merge request isc-projects/bind9!8870
2024-03-21 02:37:07 +00:00