Commit Graph
40994 Commits
Author SHA1 Message Date
Evan HuntandOndřej Surý 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 HuntandOndřej Surý 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 a4e9ce500a 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 AndrewsandMichał Kępień 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 05b09f2b5b.

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:

    ea9a8cb392
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ńandPetr Špaček 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
Mark Andrews ad083897cc Stop named-checkzone leaking test queries 2024-03-21 01:10:36 +00:00
Mark Andrews c8efe7fe1d Merge branch '4580-add-resolver-arpa-to-the-built-in-empty-zones' into 'main'
Resolve "Add resolver.arpa to the built in empty zones"

Closes #4580

See merge request isc-projects/bind9!8732
2024-03-20 21:51:24 +00:00
Mark Andrews ecb043fc7b Add release note for [GL #4580] 2024-03-21 07:45:55 +11:00
Mark Andrews d12c238750 Add CHANGES entry for [GL #4580] 2024-03-21 07:45:55 +11:00
Mark Andrews 49561277de Add RESOLVER.ARPA to the built in empty zones
RFC 9462 adds RESOLVER.ARPA to the list of built in empty zones.
2024-03-21 07:45:55 +11:00
Michał Kępień 22591ae0a7 Merge tag 'v9.19.22' 2024-03-20 14:04:49 +01:00
Michał Kępień 13c6f25abb Merge branch 'michal/add-an-async-dns-server-for-use-in-system-tests' into 'main'
Add an async DNS server for use in system tests

See merge request isc-projects/bind9!8519
2024-03-20 09:28:43 +00:00
Tom KrizekandMichał Kępień 673387c4d5 Move conftest log initialization to conftest.py
Initializing the conftest logging upon importing the isctest package
isn't practical when there are standalone pieces which can be used
outside of the testing framework, such as the asyncdnsserver module.
2024-03-20 09:22:36 +01:00
Michał KępieńandTom Krizek 6c010a5644 Add an async DNS server for use in system tests
Implement a new Python class, AsyncDnsServer, which can be used by
ans.py scripts placed in ansX/ system test subdirectories.  This enables
conveniently starting a feature-limited, non-standards-compliant, custom
DNS server instance.  It can read and serve zone files, but it is also
able to evaluate any user-provided query-processing logic, allowing
query responses to be changed, delayed, or dropped altogether.  These
are all actions commonly taken by custom DNS servers written in Python
that are used in BIND 9 system tests.  Having a single "base"
implementation of such a custom DNS server reduces code duplication,
improving test maintainability.

Co-authored-by: Tom Krizek <tkrizek@isc.org>
2024-03-20 09:22:36 +01:00
Mark Andrews d3172cb47c Merge branch '4645-cid-488064-passing-null-pointer-version-to-maybe_update_recordsandsize-which-dereferences-it' into 'main'
Resolve "CID 488064: Passing null pointer "version" to "maybe_update_recordsandsize", which dereferences it"

Closes #4645 and #4646

See merge request isc-projects/bind9!8880
2024-03-19 22:41:35 +00:00
Mark Andrews 4d2d80f534 Remove remenants of cache support from qpzone.c
These where leading to Coverity errors being reported.
2024-03-19 22:04:10 +00:00
Michal Nowak e790b0cba1 Merge branch 'mnowak/pytest_rewrite_glue' into 'main'
Rewrite glue system test to pytest

See merge request isc-projects/bind9!8846
2024-03-19 19:16:53 +00:00
Michal Nowak 69d3efed89 Use bitwise operation to remove RD from default flags 2024-03-19 19:28:55 +01:00
Michal Nowak 9950f6d651 Rewrite glue system test to pytest
Limit dnspython to version 2.0.0+
(https://github.com/rthalley/dnspython/pull/503), otherwise the test
fails with:

    E   AttributeError: module 'dns.edns' has no attribute 'OptionType'
2024-03-19 19:28:55 +01:00
Michal Nowak c252ca2ce5 Merge branch 'mnowak/pytest_rewrite_masterfile' into 'main'
Rewrite masterfile system test to pytest

See merge request isc-projects/bind9!8791
2024-03-19 10:38:07 +00:00
Michal Nowak 7a161f615a Rewrite masterfile system test to pytest 2024-03-19 10:51:02 +01:00
Michal Nowak 686033e48d Add zones_equal() with optional TTL comparison 2024-03-19 10:51:02 +01:00