2
0
mirror of https://gitlab.isc.org/isc-projects/bind9 synced 2025-08-30 14:07:59 +00:00

38684 Commits

Author SHA1 Message Date
Ondřej Surý
c8c091b7f5 Merge branch '3960-handle-non-ISC_R_SUCCESS-in-rctx_respinit' into 'main'
Properly handle ISC_R_SHUTTINGDOWN in resquery_response()

Closes #3960

See merge request isc-projects/bind9!7715
2023-03-23 11:21:33 +00:00
Ondřej Surý
93259812dd
Properly handle ISC_R_SHUTTINGDOWN in resquery_response()
When resquery_response() was called with ISC_R_SHUTTINDOWN, the region
argument would be NULL, but rctx_respinit() would try to pass
region->base and region->len to the isc_buffer_init() leading to
a NULL pointer dereference.  Properly handle non-ISC_R_SUCCESS by
ignoring the provided region.
2023-03-23 11:51:22 +01:00
Michal Nowak
f68deabb31 Merge branch 'mnowak/adapt-release-tarball-comparison-to-tags-with-dots' into 'main'
Adapt release-tarball-comparison.sh to dotted tag notation

See merge request isc-projects/bind9!7698
2023-03-22 15:07:43 +00:00
Michal Nowak
0031af6035
Adapt release-tarball-comparison.sh to dotted tag notation
Recently, the tag notation format changed:

    v9_19_9     -> v9.19.9
    v9_18_13-S1 -> v9.18.13-S1

release-tarball-comparison.sh needs to adapt.
2023-03-22 15:58:15 +01:00
Tom Krizek
95e3861f31 Merge branch '3665-dupsigs-test-stability' into 'main'
Improve dupsigs test stability

Closes #3665

See merge request isc-projects/bind9!7688
2023-03-22 09:55:33 +00:00
Tom Krizek
3291c891f6
Lighten the CI load during the dupsigs test
Previously, an AXFR request would be issued every second while waiting
for the zone to be signed. This might've been the cause of issues in CI
where many tests are running in parallel and any extra load may increase
test instability.

Instead, check for the last NSEC record to have a signature before
commencing the AXFR request to check the zone has been fully signed.

Also increase the time for the zone signing to a total of 60+10 seconds
up from the previous 30.
2023-03-22 10:16:48 +01:00
Tom Krizek
ad647dca13
End dupsigs test early if it fails
There's no point in continuing the dupsigs test if a failure is
detected. End the test early to avoid wasting time and resources.
2023-03-22 10:16:48 +01:00
Tom Krizek
fad2eee631
Store dupsigs axfr to a file for easier debugging 2023-03-22 10:16:48 +01:00
Tom Krizek
cbe2559f37
Redirect dupsigs test output to proper logger
Ensure messages from dupsigs system test end up in its log rather than
stdout. Previously, the output was hard to debug when running the tests
in parallel and messages wouldn't end up in the dupsigs.log.
2023-03-22 10:16:46 +01:00
Arаm Sаrgsyаn
50f7f059eb Merge branch '3955-hold-catz-reference-during-update' into 'main'
Hold a catz reference while the update process is running

Closes #3955

See merge request isc-projects/bind9!7704
2023-03-21 11:39:46 +00:00
Aram Sargsyan
aee14ee5d9 Add a CHANGES note for [GL #3955] 2023-03-21 10:39:52 +00:00
Aram Sargsyan
dc2b8bb1c9 Hold a catz reference while the update process is running
This should delay the catalog zone from being destroyed during
shutdown, if the update process is still running.

Doing this should not introduce significant shutdown delays, as
the update function constantly checks the 'shuttingdown' flag
and cancels the process if it is set.
2023-03-21 10:15:30 +00:00
Michal Nowak
714821bd51 Merge branch 'mnowak/respdiff-drop-allow_failure' into 'main'
respdiff jobs do not need "allow_failure: true"

See merge request isc-projects/bind9!7681
2023-03-17 10:08:40 +00:00
Michal Nowak
dd97ddca6f
respdiff jobs do not need "allow_failure: true"
ASAN and TSAN respdiff jobs should be stable and not require
"allow_failure: true" anymore.
2023-03-17 11:05:21 +01:00
Evan Hunt
f62342e74d Merge branch 'each-key-restore-test' into 'main'
add basic test for TSIG key dump/restore functionality

See merge request isc-projects/bind9!7629
2023-03-17 06:09:28 +00:00
Evan Hunt
e914c5e194 add basic test for TSIG key dump/restore functionality
stop and restart the server in the 'tsiggss' test, in order
to confirm that GSS negotiated TSIG keys are saved and restored
when named loads.

added logging to dns_tsigkey_createfromkey() to indicate whether
a key has been statically configured, generated via GSS negotiation,
or restored from a file.
2023-03-16 09:55:50 -07:00
Tom Krizek
7e4414d02d Merge branch 'tkrizek/ci-artifacts-1d' into 'main'
Use the default retention time for CI artifacts

See merge request isc-projects/bind9!7670
2023-03-16 14:04:36 +00:00
Tom Krizek
8fef5676fa
Use the default retention time for CI artifacts
The instance-wide GitLab CI artifact retention time was changed to 1 day
up from the previous value of 12 hours. Remove our explicit overrides
for 1 day artifact retention time, as it is the default now.

Previously, most of our jobs had overrides for 1 day retention, while
some of our jobs used the default 12 hours. This discrepancy could be
quite impractical at times.
2023-03-16 15:03:22 +01:00
Tom Krizek
1139907450
Move gitlab-ci.yml comment to its proper place
The comment refers to "interruptible" key, rather than the entire
"default" section.
2023-03-16 15:03:20 +01:00
Tom Krizek
48067d78fa BIND 9.19.11
-----BEGIN PGP SIGNATURE-----
 
 iHUEABYIAB0WIQQenrxMWseszT2nKSgBYjubZSogpwUCZAWshgAKCRABYjubZSog
 pzXnAP0bgqiJ0OoSwGhor59qpCBj9aCcjmbNEzXezJ+6MlYLJwEAsinsyUi7V+Yu
 6cNZoYu51+aIWsQE8RBBndcyGw12zgM=
 =BdW6
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iHUEABYIAB0WIQQenrxMWseszT2nKSgBYjubZSogpwUCZBH/IwAKCRABYjubZSog
 p+hMAQDL6MzBOAaNIj+OxkSVkiD+mr29JmfI8acmpQ1Phh5ilgEAnpUgjInY9+Eb
 AEFJyDqLPApnvA3hzhC7L0KYzYxoJAo=
 =9xEv
 -----END PGP SIGNATURE-----

Merge tag 'v9_19_11'

BIND 9.19.11
2023-03-15 18:23:44 +01:00
Artem Boldariev
a319108aeb Merge branch 'artem-remove-tlsdns-and-tcpdns-leftouts' into 'main'
Delete old TLS DNS and TCP DNS dead code

See merge request isc-projects/bind9!7689
2023-03-15 16:55:07 +00:00
Artem Boldariev
719343348e Delete old TLS DNS and TCP DNS dead code
This commit removes old, unused TLS DNS and TCP DNS definitions from
the code. They should have been deleted earlier, but that was missed.
2023-03-15 18:40:58 +02:00
Mark Andrews
95f971b001 Merge branch '3937-zone-sign-kasp' into 'main'
Resolve "NSEC records aren't signed with both configured algorithms during NSEC3->NSEC transition"

Closes #3937

See merge request isc-projects/bind9!7682
2023-03-14 13:16:37 +00:00
Mark Andrews
aafcb8611c Add CHANGES for [GL #3937] 2023-03-14 23:26:39 +11:00
Mark Andrews
4b55201459 When signing with a new algorithm preserve NSEC/NSEC3 chains
If the zone already has existing NSEC/NSEC3 chains then zone_sign
needs to continue to use them.  If there are no chains then use
kasp setting otherwise generate an NSEC chain.
2023-03-14 23:26:39 +11:00
Arаm Sаrgsyаn
bfbaef2f7b Merge branch '3928-placeholder' into 'main'
Add a CHANGES placeholder for [GL #3928]

See merge request isc-projects/bind9!7684
2023-03-14 09:58:24 +00:00
Aram Sargsyan
7211398a77 Add a CHANGES placeholder for [GL #3928] 2023-03-14 09:52:13 +00:00
Mark Andrews
4f670d1916 Merge branch '3939-insufficient-information-to-identify-key' into 'main'
Resolve "Insufficient information to identify key"

Closes #3939

See merge request isc-projects/bind9!7676
2023-03-14 03:09:25 +00:00
Mark Andrews
9f161544fd Report key name when removing it 2023-03-13 23:26:35 +00:00
Mark Andrews
7a0a2fc3e4 Add ISC_FORMAT_PRINTF to report's declaration
dns_dnssec_updatekeys's 'report' could be called with invalid arguments
which the compiler should be be able to detect.
2023-03-13 23:26:35 +00:00
Arаm Sаrgsyаn
251c0bcae3 Merge branch '3924-dnstap-test-timing-issue' into 'main'
Resolve "missing messages in `dnstap` system test after query failure"

Closes #3924

See merge request isc-projects/bind9!7674
2023-03-13 11:48:19 +00:00
Aram Sargsyan
fa686fcea5 Improve dnstap system test reliability
The dnstap system test fails intermittently, and it appears to be
a timing issue - adding a short delay after running 'fstrm_capture',
and before running 'dnstap -reopen' improves the situation from
50% failures (5 out of 10 times) to 0% failures (0 out of 20 times),
tested locally.

The reason is that 'fstrm_capture' is executed in the background,
and due to OS scheduling and other factors, the listener socket
may not be ready when the following command runs and tells 'named'
to (re)open it.
2023-03-13 10:25:01 +00:00
Ondřej Surý
b3029d31c0 Merge branch 'ondrej-userspace-rcu-github-actions' into 'main'
Install liburcu-dev to GitHub Actions

See merge request isc-projects/bind9!7675
2023-03-11 04:05:57 +00:00
Ondřej Surý
def02029c0
Install liburcu-dev to GitHub Actions
The CodeQL and SonarCloud GitHub Actions would FTBFS because of missing
liburcu-dev package resulting.  Install the required package to both
GitHub Action files.
2023-03-11 05:03:54 +01:00
Ondřej Surý
f7ae0eb544 Merge branch 'fanf-urcu' into 'main'
Build with liburcu, userspace RCU

Closes #3935

See merge request isc-projects/bind9!7662
2023-03-10 19:21:45 +00:00
Tony Finch
37c4f7f349
CHANGES and release notes for [GL #3935]
[func]		BIND now requires liburcu for lock-free data structures
		and concurrent safe memory reclamation. It replaces the
		home-grown lock-free linked list and QSBR machinery
		added in changes 6108 and 6109. The qp-trie code has
		been adjusted to use liburcu.
2023-03-10 17:31:28 +01:00
Tony Finch
7e565a87a7
Apply adjusted clang-format
The headers were slightly reordered when liburcu was added.
2023-03-10 17:31:28 +01:00
Ondřej Surý
2532b558b4
Build with liburcu, Userspace RCU
BIND needs a collection of standard lock-free data structures,
which we can find in liburcu, along with its RCU safe memory
reclamation machinery. We will use liburcu's QSBR variant instead
of the home-grown isc_qsbr.
2023-03-10 17:31:28 +01:00
Arаm Sаrgsyаn
d96ff69b84 Merge branch 'aram/fix-ISC_REFCOUNT_TRACE_IMPL-usage' into 'main'
Fix ISC_REFCOUNT_TRACE_IMPL usage

See merge request isc-projects/bind9!7673
2023-03-09 22:40:44 +00:00
Aram Sargsyan
fce68da460 Fix ISC_REFCOUNT_TRACE_IMPL usage
ISC_REFCOUNT_TRACE_IMPL uses isc_tid(), but the corresponding header
file is not included, which breaks, for example, compiling BIND with
DNS_CATZ_TRACE defined in lib/dns/include/dns/catz.h.

Add '#include <isc/tid.h>' in lib/isc/include/isc/refcount.h.
2023-03-09 21:38:04 +00:00
Michal Nowak
0663efc209 Merge branch 'mnowak/stress-test-drop-parallel-build' into 'main'
Drop parallel build from stress tests

See merge request isc-projects/bind9!7669
2023-03-09 17:31:33 +00:00
Michal Nowak
3fd7e7c81f
Drop parallel build from stress tests
BUILD_PARALLEL_JOBS environmental variable is set to 6, which does not
align well with 4 and 8 CPU core systems dedicated to CI "stress" tests.
When multiple parallel jobs run on the host, they compete for resources
with an undesirable result: 6 compiler processes of one job may starve
named, resulting in lower-than-expected throughput and minutes-long
query response latency spikes.

Better drop the build parallelism of BIND-under-test. About 1-2 minutes
are added to the 60-65 minutes long job duration.
2023-03-09 18:24:03 +01:00
Michal Nowak
ce49dccf40 Merge branch 'mnowak/update-release-tarball-comparison.sh' into 'main'
Adapt tarball comparison to dropped pregenerated man pages

See merge request isc-projects/bind9!7661
2023-03-09 16:05:20 +00:00
Michal Nowak
0bc4fad065
Adapt tarball comparison to dropped pregenerated man pages
Since pregenerated manual pages were removed from the BIND 9 repository,
Sphinx must be present in the build environment for manual pages to be
created and placed to release tarball. release-tarball-comparison.sh
script needs to be adapted to keep up with how to release tarballs are
prepared.
2023-03-09 16:55:46 +01:00
Arаm Sаrgsyаn
9c304714e3 Merge branch '3923-doth-system-test-timing-issue' into 'main'
Resolve "timing issue with incoming XoT check in `doth` system test"

Closes #3923

See merge request isc-projects/bind9!7653
2023-03-09 10:39:14 +00:00
Aram Sargsyan
5d5d4b523b Retry multiple times in doth test when checking if the zone file exists
Dumping of the freshly transferred zone file can take some time.

Retry 5 times before failing.

The log excerpt below shows such a case, when dumping lasted more than
two seconds.

    06-Mar-2023 09:32:09.973 zone example6/IN: Transfer started.
    06-Mar-2023 09:32:10.301 zone example6/IN: zone transfer finished: success
    06-Mar-2023 09:32:10.301 zone_dump: zone example6/IN: enter
    06-Mar-2023 09:32:11.789 client @0x7fe9ab435d68 10.53.0.10#44113 (example6): AXFR request
    06-Mar-2023 09:32:11.801 client @0x7fe9ab435d68 10.53.0.10#44113 (example6): transfer of 'example6/IN': AXFR ended: 5 messages, 2676 records, 55815 bytes, 0.011 secs (5074090 bytes/sec) (serial 1397051952)
    06-Mar-2023 09:32:12.409 zone_gotwritehandle: zone example6/IN: enter
    06-Mar-2023 09:32:12.421 dump_done: zone example6/IN: enter
    06-Mar-2023 09:32:12.421 zone_journal_compact: zone example6/IN: target journal size 53044
2023-03-09 10:03:19 +00:00
Aram Sargsyan
9672b6be57 Fix the placement of printing dig output comments in doth system test
There can be comments in dig output for a zone transfer only in case
of an error, so we should print those errors not when wait_for_tls_xfer
succeeds, but when it fails.

Also, there is no point in printing those comments when a failure was
indeed expected.
2023-03-09 10:03:19 +00:00
Aram Sargsyan
2fdf01573c Fail early in doth system test when the expected failure doesn't happen
If wait_for_tls_xfer succeeds, while a failure was being expected,
set ret=1 to fail without further checking if the zone file exists.
2023-03-09 10:03:19 +00:00
Michal Nowak
e6af4a1030 Merge branch 'mnowak/stress-test-build-with-default-CFLAGS' into 'main'
Build BIND in stress test jobs with common CFLAGS

See merge request isc-projects/bind9!7627
2023-03-09 09:58:05 +00:00
Michal Nowak
d33bdd36b4
Build BIND in stress test jobs with common CFLAGS
By omission, BIND was not built with common CFLAGS in the stress test
jobs. Building with common CFLAGS and -Og should help GDB produce a
backtrace with more information.
2023-03-09 10:24:50 +01:00