Commit graph

37522 commits

Author SHA1 Message Date
Ondřej Surý
4bf253ffe1
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.

(cherry picked from commit 93259812dd)
2023-03-23 12:26:09 +01:00
Tom Krizek
616920d4b2 Merge branch '3665-dupsigs-test-stability-9.18' into 'bind-9.18'
[9.18] Improve dupsigs test stability

See merge request isc-projects/bind9!7706
2023-03-22 10:21:29 +00:00
Tom Krizek
85c78dbaa9
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.

(cherry picked from commit 3291c891f6)
2023-03-22 10:56:25 +01:00
Tom Krizek
e4484bfde6
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.

(cherry picked from commit ad647dca13)
2023-03-22 10:56:25 +01:00
Tom Krizek
4b56482e62
Store dupsigs axfr to a file for easier debugging
(cherry picked from commit fad2eee631)
2023-03-22 10:56:25 +01:00
Tom Krizek
1e94c87b00
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.

(cherry picked from commit cbe2559f37)
2023-03-22 10:56:23 +01:00
Arаm Sаrgsyаn
069eaa1232 Merge branch '3955-hold-catz-reference-during-update-v9_18' into 'bind-9.18'
[9.18] Hold a catz reference while the update process is running

See merge request isc-projects/bind9!7705
2023-03-21 12:17:35 +00:00
Aram Sargsyan
51d7b13009 Add a CHANGES note for [GL #3955]
(cherry picked from commit aee14ee5d9)
2023-03-21 11:47:17 +00:00
Aram Sargsyan
eef58e9708 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.

(cherry picked from commit dc2b8bb1c9)
2023-03-21 11:47:17 +00:00
Michal Nowak
43eac16dd7 Merge branch 'mnowak/respdiff-drop-allow_failure-9.18' into 'bind-9.18'
[9.18] respdiff jobs do not need "allow_failure: true"

See merge request isc-projects/bind9!7699
2023-03-17 10:18:25 +00:00
Michal Nowak
7b7d8b7a6c
respdiff jobs do not need "allow_failure: true"
ASAN and TSAN respdiff jobs should be stable and not require
"allow_failure: true" anymore.

(cherry picked from commit dd97ddca6f)
2023-03-17 11:11:06 +01:00
Tom Krizek
c4ce5662fd Merge branch 'tkrizek/ci-artifacts-1d-9.18' into 'bind-9.18'
[9.18] Use the default retention time for CI artifacts

See merge request isc-projects/bind9!7694
2023-03-16 14:14:28 +00:00
Tom Krizek
7acea8eb5d
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.

(cherry picked from commit 8fef5676fa)
2023-03-16 15:13:13 +01:00
Tom Krizek
7aba37333f
Move gitlab-ci.yml comment to its proper place
The comment refers to "interruptible" key, rather than the entire
"default" section.

(cherry picked from commit 1139907450)
2023-03-16 15:13:09 +01:00
Tom Krizek
7545ac0a97 BIND 9.18.13
-----BEGIN PGP SIGNATURE-----
 
 iHUEABYIAB0WIQQenrxMWseszT2nKSgBYjubZSogpwUCZAWv4wAKCRABYjubZSog
 pwjzAP98XtJ8/PU3fWX9xjUswRlXUWzDAz8VJ9WB3qgC9PijMAEApOmkTwUvDHqK
 kyoz0kbU7Jr0zKc8k/N2pHT526jbcgk=
 =6V3O
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iHUEABYIAB0WIQQenrxMWseszT2nKSgBYjubZSogpwUCZBICkAAKCRABYjubZSog
 p4dgAQCpoMFVgVXMrZ03i/4bdw8o7putB1C6FSrfklho/Eb6bQEAiCydIsv4Pgjc
 HIld9JDY3PW/q3ILGkZD2qpacun1cg4=
 =Eu08
 -----END PGP SIGNATURE-----

Merge tag 'v9_18_13' into v9_18

BIND 9.18.13
2023-03-15 18:38:23 +01:00
Artem Boldariev
b6e1339612 Merge branch '3867-fix-xot-hang' into 'v9_18'
DoT: remove TLS-related kludge in isc__nmsocket_connecttimeout_cb()

See merge request isc-projects/bind9!7687
2023-03-14 18:03:36 +00:00
Artem Boldariev
b029f86334 Update release notes [GL #3867]
Mention that XoT hangs have been fixed.
2023-03-14 18:51:05 +02:00
Artem Boldariev
8e4b9421ac Update CHANGES [GL #3867]
Mention that XoT hangs have been fixed.
2023-03-14 18:51:00 +02:00
Artem Boldariev
034b5febb1 DoT: remove TLS-related kludge in isc__nmsocket_connecttimeout_cb()
This commit ensures that 'sock->tls.pending_req' is not getting
nullified during TLS connection timeout callback as it prevents the
connection callback being called when connecting was not successful.

We expect 'isc__nm_failed_connect_cb() to be called from
'isc__nm_tlsdns_shutdown()' when establishing connections was
successful, but with 'sock->tls.pending_req' nullified that will not
happen.

The code removed most likely was required in older iterations of the
NM, but to me it seems that now it does only harm. One of the well
know pronounced effects is leading to irrecoverable zone transfer
hangs via TLS.
2023-03-14 18:49:29 +02:00
Mark Andrews
03a73f720d Merge branch '3937-zone-sign-kasp-v9_18' into 'v9_18'
[9.18] Resolve "NSEC records aren't signed with both configured algorithms during NSEC3->NSEC transition"

See merge request isc-projects/bind9!7685
2023-03-14 14:00:49 +00:00
Mark Andrews
68fb8ad9dd Add CHANGES for [GL #3937]
(cherry picked from commit aafcb8611c)
2023-03-15 00:19:33 +11:00
Mark Andrews
7f13c9d3fa 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.

(cherry picked from commit 4b55201459)
2023-03-15 00:18:54 +11:00
Mark Andrews
f012549203 Merge branch '3939-insufficient-information-to-identify-key-v9_18' into 'v9_18'
[9.18] Resolve "Insufficient information to identify key"

See merge request isc-projects/bind9!7683
2023-03-14 05:49:22 +00:00
Mark Andrews
bc7c9c6ad1 Report key name when removing it
(cherry picked from commit 9f161544fd)
2023-03-14 16:26:56 +11:00
Mark Andrews
92cab3fb5e 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.

(cherry picked from commit 7a0a2fc3e4)
2023-03-14 16:26:56 +11:00
Arаm Sаrgsyаn
4a41a1af40 Merge branch '3924-dnstap-test-timing-issue-v9_18' into 'v9_18'
[9.18] Resolve "missing messages in `dnstap` system test after query failure"

See merge request isc-projects/bind9!7677
2023-03-13 13:23:37 +00:00
Aram Sargsyan
f86495f1ad 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.

(cherry picked from commit fa686fcea5)
2023-03-13 11:57:00 +00:00
Michal Nowak
bdc14c4e3b Merge branch 'mnowak/stress-test-drop-parallel-build-v9_18' into 'v9_18'
[9.18] Drop parallel build from stress tests

See merge request isc-projects/bind9!7671
2023-03-09 17:36:26 +00:00
Michal Nowak
780f28ce58
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.

(cherry picked from commit 3fd7e7c81f)
2023-03-09 18:32:17 +01:00
Arаm Sаrgsyаn
cf03a997e4 Merge branch '3923-doth-system-test-timing-issue-v9_18' into 'v9_18'
[9.18] Resolve "timing issue with incoming XoT check in `doth` system test"

See merge request isc-projects/bind9!7667
2023-03-09 11:30:00 +00:00
Aram Sargsyan
0b80d442ac 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

(cherry picked from commit 5d5d4b523b)
2023-03-09 10:40:43 +00:00
Aram Sargsyan
5ed65ce81f 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.

(cherry picked from commit 9672b6be57)
2023-03-09 10:40:37 +00:00
Aram Sargsyan
d2d55acf6e 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.

(cherry picked from commit 2fdf01573c)
2023-03-09 10:40:31 +00:00
Michal Nowak
1668d92e63 Merge branch 'mnowak/stress-test-build-with-default-CFLAGS-v9_18' into 'v9_18'
[9.18] Build BIND in stress test jobs with common CFLAGS

See merge request isc-projects/bind9!7665
2023-03-09 10:03:22 +00:00
Michal Nowak
d04776aae5
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.

(cherry picked from commit d33bdd36b4)
2023-03-09 10:58:39 +01:00
Matthijs Mekking
ab79a09d73 Merge branch '3925-serve-stale-system-test-failure-vv9_18' into 'v9_18'
[9.18] Lower chance of intermittent serve-stale system test failure

See merge request isc-projects/bind9!7664
2023-03-09 08:56:03 +00:00
Matthijs Mekking
4ce9114b34 Update serve-stale system test
The serve-stale system test was intermittently failing due to a timing
issue:

    I:serve-stale:check stale data.example TXT was refreshed...
    I:serve-stale:failed

The RRset is refreshed, however, it first checks for an expected log
line, prior checking that the stale data.example TXT was refreshed
(using dig). This log line is there to ensure the record is actually
refreshed before we start querying again. Alternatively we could just
retry_quiet 10 <wait for dig output matches expectations>. It would
lower the chances for intermittent test failures, since there is no
longer a "check for log line, sleep one second if check fails, check
for log line, ...", prior to the check.

(cherry picked from commit 0bf36da305)
2023-03-09 08:14:17 +01:00
Tom Krizek
ac9a4a73be Merge branch 'tkrizek/set-up-version-and-release-notes-for-bind-9.18.14' into 'v9_18'
Set up version and release notes for BIND 9.18.14

See merge request isc-projects/bind9!7651
2023-03-07 16:36:28 +00:00
Tom Krizek
316c6929a4
Set up release notes for BIND 9.18.14 2023-03-07 14:52:01 +01:00
Tom Krizek
8016e471d8
Update BIND version to 9.18.14-dev 2023-03-07 14:49:39 +01:00
Tom Krizek
3c85ab7f4c
Update BIND version for release 2023-03-03 15:23:18 +01:00
Tom Krizek
8f2543a7d4
Add a CHANGES marker 2023-03-03 15:22:43 +01:00
Tom Krizek
a5dbc24770 Merge branch 'tkrizek/prepare-documentation-for-bind-9.18.13' into 'v9_18_13-release'
Prepare documentation for BIND 9.18.13

See merge request isc-private/bind9!501
2023-03-03 14:21:06 +00:00
Tom Krizek
a6d72365ee
Add release note for GL #3673 2023-03-03 13:14:19 +01:00
Tom Krizek
866841a30a
Reorder release notes 2023-03-03 13:14:19 +01:00
Tom Krizek
2474d7fe87
Tweak and reword release notes 2023-03-03 13:14:19 +01:00
Tom Krizek
f95a0edc4c
Prepare release notes for BIND 9.18.13 2023-03-03 13:14:19 +01:00
Tom Krizek
3e46baa6ff Merge branch '3917-named-should-log-uv-version-when-starting-up-v9_18' into 'v9_18'
[9.18] Resolve "Named should log UV version when starting up"

See merge request isc-projects/bind9!7644
2023-03-03 09:07:46 +00:00
Mark Andrews
cdbebb0a69
Now logs UV versions when starting up
Named now logs both compile time and run time UV versions when
starting up.  This is useful information to have when debugging
network issues involving named.

(cherry picked from commit 5fd2cd8018)
2023-03-03 09:31:54 +01:00
Arаm Sаrgsyаn
c70914d788 Merge branch '3907-data-race-in-rbtdb-v9_18' into 'v9_18'
[9.18] Resolve "ThreadSanitizer: data race lib/dns/rbtdb.c:1365 in newversion"

See merge request isc-projects/bind9!7640
2023-03-02 20:22:15 +00:00