Commit Graph

37099 Commits

Author SHA1 Message Date
Tony Finch
605e714438 Merge branch 'fanf-rsasha236-v9_18' into 'v9_18'
Fix a typo RSASHA236 -> RSASHA256

See merge request isc-projects/bind9!7224
2022-12-14 15:52:06 +00:00
Tony Finch
d2fff95bc0 Fix a typo RSASHA236 -> RSASHA256
Use dns_secalg_format() to avoid error-prone repetition.

(cherry picked from commit c18a9a208d)
2022-12-14 15:51:33 +00:00
Tony Finch
1c68885cee Merge branch 'fanf-dnssec-algorithm-loglevel-v9_18' into 'v9_18'
List supported DNSSEC algorithms at log level NOTICE

See merge request isc-projects/bind9!7226
2022-12-14 12:30:14 +00:00
Tony Finch
24d02d0986 List supported DNSSEC algorithms at log level NOTICE
NOTICE matches the other startup messages. WARNING weirdly
suggests the list is a problem.

(cherry picked from commit 72f8d03cad)
2022-12-14 11:03:48 +00:00
Mark Andrews
18e407c712 Merge branch '3737-fix-initialisation-of-local-in-isdotlocal-in-dig-v9_18' into 'v9_18'
Resolve "fix initialisation of local. in isdotlocal in dig" [v9_18]

See merge request isc-projects/bind9!7221
2022-12-14 00:32:52 +00:00
Mark Andrews
d2aa4ad87c Properly initialise local_ndata in isdotlocal in dig
Remove the trailing '\0' so that the length field of the dns_name_t
structure is correct.  The old data just happens to work with
dns_name_issubdomain but would fail with dns_name_equal.

(cherry picked from commit 8ce163bbc5)
2022-12-14 10:30:16 +11:00
Tom Krizek
c5e392a226 Merge branch 'tkrizek/set-up-version-and-release-notes-for-bind-9.18.11' into 'v9_18'
Set up version and release notes for bind 9.18.11

See merge request isc-projects/bind9!7219
2022-12-13 16:18:12 +00:00
Tom Krizek
6b498a12cf Set up release notes for BIND 9.18.11 2022-12-13 17:02:14 +01:00
Tom Krizek
4d79f073b6 Update BIND version to 9.18.11-dev 2022-12-13 17:02:03 +01:00
Ondřej Surý
e0bf7ed171 Merge branch '3731-attach-keyfileio-to-zone-v9_18' into 'v9_18'
Implement proper reference counting for dns_keyfileio_t

See merge request isc-projects/bind9!7210
2022-12-09 14:56:01 +00:00
Ondřej Surý
9ebd775e29 Implement proper reference counting for dns_keyfileio_t
Instead of relying on hash table search when using the keys, implement a
proper reference counting in dns_keyfileio_t objects, and attach/detach
the objects to the zone.

(cherry picked from commit 79115a0c3b)
2022-12-09 15:17:02 +01:00
Ondřej Surý
8b8c761a90 Merge branch 'pspacek/configure-doh-help-fix-v9_18' into 'v9_18'
Fix configure --disable-doh help text [v9_18]

See merge request isc-projects/bind9!7194
2022-12-08 10:17:41 +00:00
Petr Špaček
0d78be7057 Fix configure --disable-doh help text
This is technically fixup for 2bb454182b.

Related: !4926
(cherry picked from commit 5ec272007d)
2022-12-08 10:17:32 +00:00
Ondřej Surý
c51cb3b390 Merge branch '3727-fix-off-by-one-reference-counting-in-zonemgr_keymgmt_delete-v9_18' into 'v9_18'
Release unused key file IO lock objects [v9.18]

See merge request isc-projects/bind9!7193
2022-12-08 10:17:15 +00:00
Ondřej Surý
f79a9c856c Add CHANGES and release note for [GL #3727]
(cherry picked from commit 56a997b0b5)
2022-12-08 10:56:31 +01:00
Ondřej Surý
85f5071a6d Release unused key file IO lock objects
Due to off-by-one error in zonemgr_keymgmt_delete, unused key file IO
lock objects were never freed and they were kept until the server
shutdown.  Adjust the returned value by -1 to accomodate the fact that
the atomic_fetch_*() functions return the value before the operation and
not current value after the operation.

(cherry picked from commit fb1acd6736)
2022-12-08 10:56:31 +01:00
Tom Krizek
b5d53e75b7 Merge branch 'tkrizek/revert-3678-serve-stale-servfail-v9_18' into 'v9_18'
Revert "Merge branch '3678-serve-stale-servfailing-unexpectedly-v9_18' into 'v9_18'"

See merge request isc-projects/bind9!7184
2022-12-08 09:31:50 +00:00
Tom Krizek
f4d0b2dca9 Revert "Merge branch '3678-serve-stale-servfailing-unexpectedly-v9_18' into 'v9_18'"
This reverts commit 81b6f17e7c, reversing
changes made to ea47a9c100.

It also removes release note 6038, since the fix is reverted.
2022-12-08 10:22:33 +01:00
Mark Andrews
aa7870cd2e Merge branch '3613-redo-dumping-expired-rdatasets-v9_18' into 'v9_18'
Resolve "TTL issue with resolver's cached and expired results for qtype ANY queries" [v9_18]

See merge request isc-projects/bind9!7188
2022-12-08 01:03:23 +00:00
Mark Andrews
2ddf710e40 Add CHANGES note for [GL #3613]
(cherry picked from commit 485e968087)
2022-12-07 23:59:36 +00:00
Mark Andrews
d218c7f2f3 Remove different zero TTL handling for rdataset iterator
Zero TTL handling does not need to be different for 'rdatasetiter_first'
and 'rdatasetiter_next' and it interacts badly with 'bind_rdatadataset'
which makes different determinations.

(cherry picked from commit 1a39328feb)
2022-12-07 23:59:36 +00:00
Mark Andrews
47239b45e6 Add dns_db_allrdatasets options
'DNS_DB_STALEOK' returns stale rdatasets as well as current rdatasets.

'DNS_DB_EXPIREDOK' returns expired rdatasets as well as current
rdatasets. This option is currently only set when DNS_DB_STALEOK is
also set.

(cherry picked from commit 85048ddeee)
2022-12-07 23:59:36 +00:00
Mark Andrews
6f998bbe51 Extend dns_db_allrdatasets to control interation results
Add an options parameter to control what rdatasets are returned when
iteratating over the node.  Specific modes will be added later.

(cherry picked from commit 7695c36a5d)
2022-12-07 23:59:36 +00:00
Mark Andrews
434b53281b Properly select active rdatasets when iterating across node
Active rdatasets where not being properly selected in rdatasetiter_first
and rdatasetiter_next.

(cherry picked from commit 3bdab2d111)
2022-12-07 23:59:36 +00:00
Mark Andrews
52a9db2180 Check TTLs of mixed TTL ANY response with expired records
(cherry picked from commit e49f83499a)
2022-12-07 23:59:36 +00:00
Mark Andrews
50caecea06 Revert "Fix rndc dumpdb -expired for stuck cache contents"
This reverts commit f8d866c6ef.

(cherry picked from commit 90249e4aa5)
2022-12-07 23:59:36 +00:00
Mark Andrews
2cc91f65c4 Merge branch '3724-update-dig-tcp-documentation-v9_18' into 'v9_18'
Add reference to +tcp for +ignore [v9_18]

See merge request isc-projects/bind9!7186
2022-12-07 23:13:46 +00:00
Mark Andrews
f8ce443684 Add reference to +tcp for +ignore
(cherry picked from commit b5951f0411)
2022-12-08 09:29:35 +11:00
Ondřej Surý
6c0577ad81 Merge branch 'ondrej-fix-missing-zone_check-in-checkds-system-test-v9_18' into 'v9_18'
Fix missing zone_check() call in checkds test [v9.18]

See merge request isc-projects/bind9!7182
2022-12-07 18:46:48 +00:00
Ondřej Surý
5164ba8d71 Fix missing zone_check() call in checkds test
The bad2-dswithdrawn.checkds tests were missing call to the
zone_checks() contributing to intermittent timing failures of the
checkds system test.

(cherry picked from commit 718831bfcc)
2022-12-07 19:34:42 +01:00
Ondřej Surý
31eed6a31f Merge branch '3183-send-shutdown-to-ns_client-on-shutdown-v9_18' into 'v9_18'
Propagate the shutdown event to the recursing ns_client(s) [v9.18]

See merge request isc-projects/bind9!7028
2022-12-07 18:33:27 +00:00
Ondřej Surý
2cb02a417a Add CHANGES and release notes for [GL #3183]
(cherry picked from commit d3f1639c16e7777a52d66c2dccd8b43a08a0750b)
2022-12-07 18:09:06 +01:00
Ondřej Surý
85e35d4c27 Propagate the shutdown event to the recursing ns_client(s)
Send the ns_query_cancel() on the recursing clients when we initiate the
named shutdown for faster shutdown.

When we are shutting down the resolver, we cancel all the outstanding
fetches, and the ISC_R_CANCEL events doesn't propagate to the ns_client
callback.

In the future, the better solution how to fix this would be to look at
the shutdown paths and let them all propagate from bottom (loopmgr) to
top (f.e. ns_client).

(cherry picked from commit d861d403bb9a7912e29a06aba6caf6d502839f1b)
2022-12-07 18:08:29 +01:00
Ondřej Surý
d3ae26fa8e Merge branch '3386-nxdomain-serve-stale-v9_18' into 'v9_18'
don't keep stale NXDOMAIN cache entries [v9.18]

See merge request isc-projects/bind9!7180
2022-12-07 16:58:35 +00:00
Evan Hunt
265d606fd3 CHANGES and release note for [GL #3386]
(cherry picked from commit 15f08ca961)
2022-12-07 17:46:53 +01:00
Evan Hunt
2b78a2f9fa don't keep stale NXDOMAIN cache entries
when serve-stale is enabled, NXDOMAIN cache entries are no longer
preserved after the normal negative cache TTL, in order to reduce
unnecessary cache memory consumption.

(cherry picked from commit f1485ca145)
2022-12-07 17:21:00 +01:00
Matthijs Mekking
b6df5bfe2b Merge branch 'matthijs-document-ns-minimal-responses-v9_18' into 'v9_18'
Document NS queries are excempt from minimal-responses

See merge request isc-projects/bind9!7176
2022-12-07 12:09:20 +00:00
Matthijs Mekking
7694e5019c Document NS queries are excempt from minimal-responses
Also document that DNSKEY, DS, CDNSKEY, and CDS never do additional
section processing.

(cherry picked from commit f7b477f6ea)
2022-12-07 12:06:43 +01:00
Michal Nowak
f275e9896b Merge branch 'mnowak/asan-tsan-respdiff-jobs-v9_18' into 'v9_18'
[v9_18] Add ASAN- and TSAN-enabled respdiff jobs

See merge request isc-projects/bind9!7173
2022-12-07 09:40:47 +00:00
Michal Nowak
af03ec8987 Add ASAN- and TSAN-enabled respdiff jobs
Neither of the new CI jobs can reliably pass at the moment; hence they
are defined with "allow_failure: true" until issues in the code base are
resolved.

(cherry picked from commit 4f23de554c)
2022-12-07 08:28:16 +01:00
Michal Nowak
865bc5c250 Extract TSAN parsing code
(cherry picked from commit 9856296666)
2022-12-07 08:27:56 +01:00
Mark Andrews
9dd77f770c Merge branch '3683-use-after-free-in-catalog-zone-processing-v9_18' into 'v9_18'
Resolve "use after free in catalog zone processing" [v9_18]

See merge request isc-projects/bind9!7170
2022-12-06 23:30:49 +00:00
Mark Andrews
c8fa438768 Add release note for [GL #3683]
(cherry picked from commit 9843da3423)
2022-12-07 09:45:21 +11:00
Mark Andrews
569b7b20da Add CHANGES note for [GL #3683]
(cherry picked from commit 72402e1710)
2022-12-07 09:44:35 +11:00
Mark Andrews
814ae11d19 Check that restored catalog zone works
Using a restored catalog zone excercised a use-after-free bug.
The test checks that the use-after-free bug is gone and is just
a reasonable behaviour check in its own right.

(cherry picked from commit bca84c8601)
2022-12-07 09:44:35 +11:00
Mark Andrews
1e6a12091f Add missing DbC magic checks
Checking for value != NULL is not sufficient to detect use after
free errors.

(cherry picked from commit b1086a5561)
2022-12-07 09:44:35 +11:00
Mark Andrews
6e2a33dd4c Call dns_db_updatenotify_unregister earlier
dns_db_updatenotify_unregister needed to be called earlier to ensure
that listener->onupdate_arg always points to a valid object.  The
existing lazy cleanup in rbtdb_free did not ensure that.

(cherry picked from commit 35839e91d8)
2022-12-07 09:44:35 +11:00
Mark Andrews
90822519eb Suppress duplicate dns_db_updatenotify_register registrations
Duplicate dns_db_updatenotify_register registrations need to be
suppressed to ensure that dns_db_updatenotify_unregister is successful.

(cherry picked from commit f13e71e551)
2022-12-07 09:44:30 +11:00
Arаm Sаrgsyаn
81b6f17e7c Merge branch '3678-serve-stale-servfailing-unexpectedly-v9_18' into 'v9_18'
[v9_18] Resolve "stale-serve and RPZ put in SERVFAIL cache unexpected record"

See merge request isc-projects/bind9!7166
2022-12-06 15:01:29 +00:00
Michał Kępień
a4547a1093 Check for NULL before dereferencing qctx->rpz_st
Commit 9ffb4a7ba1 causes Clang Static
Analyzer to flag a potential NULL dereference in query_nxdomain():

    query.c:9394:26: warning: Dereference of null pointer [core.NullDereference]
            if (!qctx->nxrewrite || qctx->rpz_st->m.rpz->addsoa) {
                                    ^~~~~~~~~~~~~~~~~~~
    1 warning generated.

The warning above is for qctx->rpz_st potentially being a NULL pointer
when query_nxdomain() is called from query_resume().  This is a false
positive because none of the database lookup result codes currently
causing query_nxdomain() to be called (DNS_R_EMPTYWILD, DNS_R_NXDOMAIN)
can be returned by a database lookup following a recursive resolution
attempt.  Add a NULL check nevertheless in order to future-proof the
code and silence Clang Static Analyzer.

(cherry picked from commit 07592d1315)
2022-12-06 13:47:51 +00:00