]> git.ipfire.org Git - thirdparty/bind9.git/log
thirdparty/bind9.git
3 years agoMerge branch 'fanf-backtrace-log' into 'main'
Tony Finch [Wed, 29 Mar 2023 11:13:32 +0000 (11:13 +0000)] 
Merge branch 'fanf-backtrace-log' into 'main'

Ad-hoc backtrace logging with isc_backtrace_log()

See merge request isc-projects/bind9!7743

3 years agoAd-hoc backtrace logging with isc_backtrace_log()
Tony Finch [Fri, 3 Mar 2023 12:01:03 +0000 (12:01 +0000)] 
Ad-hoc backtrace logging with isc_backtrace_log()

It's sometimes helpful to get a quick idea of the call stack when
debugging. This change factors out the backtrace logging from named's
fatal error handler so that it's easy to use in other places too.

3 years agoMerge branch 'ondrej/fix-isc_nm_httpconnect-to-check-for-shuttingdown' into 'main'
Ondřej Surý [Wed, 29 Mar 2023 05:50:01 +0000 (05:50 +0000)] 
Merge branch 'ondrej/fix-isc_nm_httpconnect-to-check-for-shuttingdown' into 'main'

Fix isc_nm_httpconnect to check for shuttindown condition

See merge request isc-projects/bind9!7736

3 years agoFix isc_nm_httpconnect to check for shuttindown condition
Ondřej Surý [Tue, 28 Mar 2023 07:40:59 +0000 (09:40 +0200)] 
Fix isc_nm_httpconnect to check for shuttindown condition

The isc_nm_httpconnect() would succeed even if the netmgr would be
already shuttingdown.  This has been fixed and the unit test has been
updated to cope with fact that the handle would be NULL when
isc_nm_httpconnect() returns with an error.

3 years agoMerge branch '3926-dns_qp-fuzz-test-is-failing-to-build-under-clusterfuzz' into ...
Mark Andrews [Wed, 29 Mar 2023 03:20:03 +0000 (03:20 +0000)] 
Merge branch '3926-dns_qp-fuzz-test-is-failing-to-build-under-clusterfuzz' into 'main'

Remove unnecessary conditionals in fuzz/Makefile.am

Closes #3926

See merge request isc-projects/bind9!7649

3 years agoBuild libtest even if CMOCKA is not available
Mark Andrews [Thu, 9 Mar 2023 04:53:42 +0000 (15:53 +1100)] 
Build libtest even if CMOCKA is not available

Be more selective about what is not built when CMOCKA is not available
so that fuzz/dns_qp and fuzz/dns_qpkey_name can link against it.

3 years agoMerge branch 'each-dnsrps-testlib' into 'main'
Evan Hunt [Wed, 29 Mar 2023 02:03:17 +0000 (02:03 +0000)] 
Merge branch 'each-dnsrps-testlib' into 'main'

use a test library for DNSRPS

See merge request isc-projects/bind9!7693

3 years agoCHANGES for [GL !7693]
Evan Hunt [Wed, 15 Mar 2023 19:25:28 +0000 (12:25 -0700)] 
CHANGES for [GL !7693]

3 years agoadd --enable-dnsrps to gitlab CI
Evan Hunt [Wed, 15 Mar 2023 21:05:26 +0000 (14:05 -0700)] 
add --enable-dnsrps to gitlab CI

enable DNSRPS in the continuous integration tests

this triggered a build failure in OpenBSD; building with DNSRPS
causes arpa/nameser.h to be included, which defines the value
STATUS. that value was then reused in server.c  renaming the
value to STAT corrects the error.

3 years agoupdate the rpz tests to use the dummyrpz library
Evan Hunt [Tue, 14 Mar 2023 02:43:04 +0000 (19:43 -0700)] 
update the rpz tests to use the dummyrpz library

when testing the DNSRPS API, instead of linking to an installed
librpz.so from fastrpz, we now link to the test library. code that
ran dnsrpzd and checked the fastrpz license is now unnecessary and
has been removed.

two dnsrps-specific test cases in rpz (qname_as_ns and ip_as_ns) have
been removed, because they were only supported by fastrpz and do not
work in the test library. in rpzrecurse, nsip-wait-recurse and
nsdname-wait-recurse are now only tested in native mode, due to those
tests being specific to the native implementation.

3 years agoclean up library
Mark Andrews [Wed, 22 Mar 2023 06:57:10 +0000 (17:57 +1100)] 
clean up library

address style issues, unfreed memory, etc.

3 years agoimport libdummyrpz test library for DNSRPS
Evan Hunt [Mon, 13 Mar 2023 19:47:00 +0000 (12:47 -0700)] 
import libdummyrpz test library for DNSRPS

libdummyrpz is a limited version of the fastrpz library for use in
testing the dnsrps API.

3 years agoallow configuration of dnsrps library path
Evan Hunt [Mon, 13 Mar 2023 21:13:39 +0000 (14:13 -0700)] 
allow configuration of dnsrps library path

for testing purposes, we need to be able to specify a library path from
which to load the dnsrps implementation. this can now be done with the
"dnsrps-library" option.

DNSRPS can now be enabled in configure regardless of whether librpz.so
is currently installed on the system.

3 years agoMerge branch '3842-delv-ns' into 'main'
Evan Hunt [Tue, 28 Mar 2023 20:08:34 +0000 (20:08 +0000)] 
Merge branch '3842-delv-ns' into 'main'

implement "delv +ns"

Closes #3842

See merge request isc-projects/bind9!7477

3 years agoCHANGES and release note for [GL #3842]
Evan Hunt [Thu, 2 Feb 2023 07:38:04 +0000 (23:38 -0800)] 
CHANGES and release note for [GL #3842]

3 years agotest "delv +ns"
Evan Hunt [Mon, 27 Mar 2023 22:42:09 +0000 (15:42 -0700)] 
test "delv +ns"

add tests for "delv +ns", with and without +qmin and with and without
validation.

3 years agoadd "delv +hint"
Evan Hunt [Sat, 25 Mar 2023 00:50:32 +0000 (17:50 -0700)] 
add "delv +hint"

Add the ablity to specify a hints file from which to load root
name server addresses, so that "delv +ns" can be used with test
name servers.

3 years agoadd "delv +qmin"
Evan Hunt [Fri, 3 Mar 2023 08:46:36 +0000 (00:46 -0800)] 
add "delv +qmin"

add an option to enable or disable QNAME minimization in delv's
internal resolver.

3 years agoadd "delv +strace"
Evan Hunt [Thu, 2 Feb 2023 07:19:36 +0000 (23:19 -0800)] 
add "delv +strace"

"delv +strace" is similar to "delv +mtrace", but sets the logging
level to DEBUG(11) instead of DEBUG(10), so that packets sent
will be logged along with packets received. "delv +ns" turns
this option on by default.

3 years agosend delv +ns output to stdout
Evan Hunt [Wed, 15 Feb 2023 01:28:55 +0000 (17:28 -0800)] 
send delv +ns output to stdout

normally, the only output of delv that is sent to stdout is
the final answer to the query; all other output is sent to
stderr. this seems undesirable for delv +ns, which will
only be used to see the process of finding the answer. so,
for that case, we now send all the logging to stdout.

3 years agochange the log level of "resolver priming query complete"
Evan Hunt [Tue, 31 Jan 2023 21:30:12 +0000 (13:30 -0800)] 
change the log level of "resolver priming query complete"

this log message, formerly at level INFO, is now DEBUG(1),
so it won't be printed when running "delv +ns +nortrace".

3 years agoon connect error, send the actual result to the caller
Evan Hunt [Tue, 31 Jan 2023 21:30:12 +0000 (13:30 -0800)] 
on connect error, send the actual result to the caller

formerly if a connection failed in dns_request, the callback
function was called with ISC_R_CANCELED. change this to the
actual result code so the failure is correctly reported.

3 years agoadd explicit error for +trace argument
Evan Hunt [Wed, 15 Feb 2023 00:56:51 +0000 (16:56 -0800)] 
add explicit error for +trace argument

add a specific error message when someone tries to use
"delv +trace" suggesting "delv +ns" instead.

3 years agoadd "delv +ns" command, for full internal resolution
Evan Hunt [Tue, 31 Jan 2023 21:30:12 +0000 (13:30 -0800)] 
add "delv +ns" command, for full internal resolution

"delv +ns" (name server mode) instantiates a full recursive resolver
inside delv and uses it to resolve the requested name and type, logging
every authoritative response received to iterative queries in the
process. this is intended to replace "dig +trace"; it much more
accurately duplicates the behavior of named when resolving a query
with a cold cache.

3 years agochange ns__client_request() to ns_client_request()
Evan Hunt [Wed, 12 Jan 2022 07:35:22 +0000 (23:35 -0800)] 
change ns__client_request() to ns_client_request()

in the future we'll want to call this function from outside named,
so change the name to one suitable for external access.

3 years agoupdate stream sockets with bound address/port
Evan Hunt [Tue, 31 Jan 2023 21:30:12 +0000 (13:30 -0800)] 
update stream sockets with bound address/port

when isc_nm_listenstreamdns() is called with a local port of 0,
a random port is chosen. call uv_getsockname() to determine what
the port is as soon as the socket is bound, and add a function
isc_nmsocket_getaddr() to retrieve it, so that the caller can
connect to the listening socket. this will be used in cases
where the same process is acting as both client and server.

3 years agoadd ns_interface_create()
Evan Hunt [Tue, 31 Jan 2023 21:30:12 +0000 (13:30 -0800)] 
add ns_interface_create()

add a public function ns_interface_create() allowing the caller
to set up a listening interface directly without having to set
up listen-on and scan network interfaces.

3 years agoadd dns_view_addtrustedkey()
Evan Hunt [Tue, 31 Jan 2023 21:30:12 +0000 (13:30 -0800)] 
add dns_view_addtrustedkey()

the new dns_view_addtrustedkey() function allows a view's trust
anchors to be updated directly. this code was formerly in
dns_client_addtrustedkey(), which is now a wrapper around
dns_view_addtrustedkey().

3 years agoMerge branch 'mnowak/drop-unit-and-system-test-jobs' into 'main'
Michal Nowak [Tue, 28 Mar 2023 14:33:38 +0000 (14:33 +0000)] 
Merge branch 'mnowak/drop-unit-and-system-test-jobs' into 'main'

Drop tests on amd64cross32; move "unstable" unit and system jobs; drop Tumbleweed

See merge request isc-projects/bind9!7717

3 years agoDrop "unstable" Debian "bullseye" unit and system jobs
Michal Nowak [Thu, 23 Mar 2023 10:05:54 +0000 (11:05 +0100)] 
Drop "unstable" Debian "bullseye" unit and system jobs

"Unstable" Debian "bullseye" unit and system jobs differ from unit and
system jobs on the Debian "bullseye" image by running a few more tests
enabled by the CI_ENABLE_ALL_TESTS environmental variable.  These tests
are no less stable than the rest, and thus to have distinct jobs for
them wastes resources.

Run "unstable" unit and system tests as part of stock Debian "bullseye"
jobs.

3 years agoDrop unit and system tests on amd64cross32
Michal Nowak [Thu, 23 Mar 2023 09:30:59 +0000 (10:30 +0100)] 
Drop unit and system tests on amd64cross32

amd64cross32 jobs run a cross-compiled 32-bit BIND 9 on the 64-bit
platform. This approach brings no build issues, and it is a good way to
catch 32-bit issues in BIND 9 code-base and ensure cross-compilation
keeps working.

Unfortunately, running unit and system tests is a problem:

- #3269 - doth-ns1 frequently failed to start
- #3316 - quota_test sometimes fails to create new thread
- #3956 - tcp-ns1 sometimes fails to allocate memory

There's little value in running unit and system tests on the
amd64cross32 platform, and it only means the effort spent by QA by
looking into what turns out to be 32-bit limitations.

3 years agoMerge branch '3965-source-never-read-master.c' into 'main'
Matthijs Mekking [Tue, 28 Mar 2023 12:57:49 +0000 (12:57 +0000)] 
Merge branch '3965-source-never-read-master.c' into 'main'

Fix scan-build issue: initialized value never read

Closes #3965

See merge request isc-projects/bind9!7725

3 years agoAdd CHANGES entry for #3965
Matthijs Mekking [Mon, 27 Mar 2023 09:56:39 +0000 (11:56 +0200)] 
Add CHANGES entry for #3965

3 years agoFix scan-build issue: initialized value never read
Matthijs Mekking [Mon, 27 Mar 2023 09:54:00 +0000 (11:54 +0200)] 
Fix scan-build issue: initialized value never read

Value stored to 'source' during its initialization is never read.

3 years agoMerge branch 'tkrizek/gh-actions-branch-name-update' into 'main'
Tom Krizek [Mon, 27 Mar 2023 15:12:14 +0000 (15:12 +0000)] 
Merge branch 'tkrizek/gh-actions-branch-name-update' into 'main'

Update branch&tag name conventions

See merge request isc-projects/bind9!7697

3 years agoUpdate branch&tag naming convention in CONTRIBUTING
Tom Krizek [Fri, 24 Mar 2023 13:49:06 +0000 (14:49 +0100)] 
Update branch&tag naming convention in CONTRIBUTING

3 years agoUpdate github actions to trigger on correct branches
Tom Krizek [Thu, 16 Mar 2023 16:20:41 +0000 (17:20 +0100)] 
Update github actions to trigger on correct branches

The naming convention for maintanence branches was changed from `vX_Y`
to `bind-X.Y`.

3 years agoMerge branch '3962-doc-arm-fixes' into 'main'
Tom Krizek [Mon, 27 Mar 2023 15:07:31 +0000 (15:07 +0000)] 
Merge branch '3962-doc-arm-fixes' into 'main'

Documentation formatting fixes in ARM

Closes #3962

See merge request isc-projects/bind9!7723

3 years agoApply suppress_grammar directive in ARM docs
Tom Krizek [Fri, 24 Mar 2023 12:30:13 +0000 (13:30 +0100)] 
Apply suppress_grammar directive in ARM docs

With a newline before the :suppress_grammar: directive, it wasn't
actually interpreted as a directive, but rather as node content.
Therefore, the directive was ignored and the grammar was incorrectly
printed out.

3 years agoAdd missing newline in documentation code example
Tom Krizek [Fri, 24 Mar 2023 09:46:08 +0000 (10:46 +0100)] 
Add missing newline in documentation code example

3 years agoMerge branch 'mnowak/suppress-gitlab-clean-up-output' into 'main'
Michal Nowak [Mon, 27 Mar 2023 13:04:45 +0000 (13:04 +0000)] 
Merge branch 'mnowak/suppress-gitlab-clean-up-output' into 'main'

Suppress Git clean output in GitLab CI

See merge request isc-projects/bind9!7702

3 years agoSuppress Git clean output in GitLab CI
Michal Nowak [Mon, 20 Mar 2023 09:41:42 +0000 (10:41 +0100)] 
Suppress Git clean output in GitLab CI

Git clean in GitLab CI can take up to a thousand lines, thus cluttering
the output for no good reason.

The default GitLab GIT_CLEAN_FLAGS variable is extended with "q" as in
"quiet.

3 years agoMerge branch 'pspacek/qmin-docs-describe-underscore' into 'main'
Petr Špaček [Mon, 27 Mar 2023 12:58:48 +0000 (12:58 +0000)] 
Merge branch 'pspacek/qmin-docs-describe-underscore' into 'main'

Clarify qname-minimization relaxed in the ARM

See merge request isc-projects/bind9!7646

3 years agoClarify qname-minimization relaxed in the ARM
Petr Špaček [Fri, 3 Mar 2023 15:21:03 +0000 (16:21 +0100)] 
Clarify qname-minimization relaxed in the ARM

Leading underscore in qname confused some users, and it was not
documented.

3 years agoMerge branch '3968-catz-data-race-in-dns__catz_update_cb' into 'main'
Arаm Sаrgsyаn [Mon, 27 Mar 2023 11:35:43 +0000 (11:35 +0000)] 
Merge branch '3968-catz-data-race-in-dns__catz_update_cb' into 'main'

Fix a data race in dns__catz_update_cb()

Closes #3968

See merge request isc-projects/bind9!7726

3 years agoAdd a CHANGES note for [GL #3968]
Aram Sargsyan [Mon, 27 Mar 2023 11:09:13 +0000 (11:09 +0000)] 
Add a CHANGES note for [GL #3968]

3 years agoFix a data race in dns__catz_update_cb()
Aram Sargsyan [Mon, 27 Mar 2023 10:56:22 +0000 (10:56 +0000)] 
Fix a data race in dns__catz_update_cb()

The dns__catz_update_cb() function was earlier updated (see
d2ecff3c4a0d961041b860515858d258d40462d7) to use a separate
'dns_db_t' object ('catz->updb' instead of 'catz->db') to
avoid a race between the 'dns__catz_update_cb()' and
'dns_catz_dbupdate_callback()' functions, but the 'REQUIRE'
check there still checks the validity of the 'catz->db' object.

Fix the omission.

3 years agoMerge branch 'each-replay-merge' into 'main'
Evan Hunt [Fri, 24 Mar 2023 20:46:46 +0000 (20:46 +0000)] 
Merge branch 'each-replay-merge' into 'main'

revise branch format

See merge request isc-projects/bind9!7719

3 years agoUpdate tag name convention in release checklist
Tom Krizek [Fri, 24 Mar 2023 13:56:19 +0000 (14:56 +0100)] 
Update tag name convention in release checklist

3 years agorevise branch format
Evan Hunt [Thu, 23 Mar 2023 21:05:03 +0000 (14:05 -0700)] 
revise branch format

backport branches are now called "bind-9.x" instead of "v9_x".

3 years agoMerge branch 'ondrej/use-isc_job-and-isc_async-in-netmgr' into 'main'
Ondřej Surý [Fri, 24 Mar 2023 07:59:44 +0000 (07:59 +0000)] 
Merge branch 'ondrej/use-isc_job-and-isc_async-in-netmgr' into 'main'

Convert netmgr netievent to isc_job/isc_async

Closes #3964

See merge request isc-projects/bind9!7714

3 years agoCHANGES for [GL #3964]
Evan Hunt [Fri, 24 Mar 2023 00:51:27 +0000 (17:51 -0700)] 
CHANGES for [GL #3964]

3 years agoRemove the netievent remnants
Ondřej Surý [Thu, 23 Mar 2023 22:56:46 +0000 (23:56 +0100)] 
Remove the netievent remnants

After removing all functional netievents, remove what has been left from
the netievents.  This also includes leftovers from previous refactorings.

3 years agoConvert stopping generic socket children to to isc_async callback
Ondřej Surý [Thu, 23 Mar 2023 22:52:26 +0000 (23:52 +0100)] 
Convert stopping generic socket children to to isc_async callback

Simplify the stopping of the generic socket children by using the
isc_async API from the loopmgr instead of using the asychronous
netievent mechanism in the netmgr.

3 years agoConvert setting of the TLS contexts to to isc_async callback
Ondřej Surý [Thu, 23 Mar 2023 22:47:33 +0000 (23:47 +0100)] 
Convert setting of the TLS contexts to to isc_async callback

Simplify the setting of the TLS contexts by using the isc_async API
from the loopmgr instead of using the asychronous netievent mechanism in
the netmgr.

3 years agoConvert canceling StreamDNS socket to to isc_async callback
Ondřej Surý [Thu, 23 Mar 2023 22:34:12 +0000 (23:34 +0100)] 
Convert canceling StreamDNS socket to to isc_async callback

Simplify the canceling of the StreamDNS socket by using the isc_async API
from the loopmgr instead of using the asychronous netievent mechanism in
the netmgr.

3 years agoConvert reading from StreamDNS socket to to isc_async callback
Ondřej Surý [Thu, 23 Mar 2023 22:30:32 +0000 (23:30 +0100)] 
Convert reading from StreamDNS socket to to isc_async callback

Simplify the reading from the StreamDNS socket by using the isc_async API
from the loopmgr instead of using the asychronous netievent mechanism in
the netmgr.

3 years agoConvert setting of the DoH endpoints to to isc_async callback
Ondřej Surý [Thu, 23 Mar 2023 22:20:33 +0000 (23:20 +0100)] 
Convert setting of the DoH endpoints to to isc_async callback

Simplify the setting of the DoH endpoints by using the isc_async API
from the loopmgr instead of using the asychronous netievent mechanism in
the netmgr.

3 years agoConvert sending on the DoH socket to to isc_async callback
Ondřej Surý [Thu, 23 Mar 2023 22:00:21 +0000 (23:00 +0100)] 
Convert sending on the DoH socket to to isc_async callback

Simplify the sending on the DoH socket by using the isc_async API
from the loopmgr instead of using the asychronous netievent mechanism in
the netmgr.

3 years agoConvert closing the DoH socket to to isc_async callback
Ondřej Surý [Thu, 23 Mar 2023 21:56:00 +0000 (22:56 +0100)] 
Convert closing the DoH socket to to isc_async callback

Simplify the closing the DoH socket by using the isc_async API
from the loopmgr instead of using the asychronous netievent mechanism in
the netmgr.

3 years agoConvert doing the TLS IO to to isc_async callback
Ondřej Surý [Thu, 23 Mar 2023 21:52:47 +0000 (22:52 +0100)] 
Convert doing the TLS IO to to isc_async callback

Simplify the doing the TLS IO by using the isc_async API
from the loopmgr instead of using the asychronous netievent mechanism in
the netmgr.

3 years agoCleanup already defunct tlsconnect netievent
Ondřej Surý [Thu, 23 Mar 2023 21:48:41 +0000 (22:48 +0100)] 
Cleanup already defunct tlsconnect netievent

The netievent used for TLS connect was already defunct, just cleanup the
cruft.

3 years agoConvert sending on the TLS socket to to isc_async callback
Ondřej Surý [Thu, 23 Mar 2023 21:46:58 +0000 (22:46 +0100)] 
Convert sending on the TLS socket to to isc_async callback

Simplify the sending on the TLS socket by using the isc_async API
from the loopmgr instead of using the asychronous netievent mechanism in
the netmgr.

3 years agoConvert closing the TLS socket to to isc_async callback
Ondřej Surý [Thu, 23 Mar 2023 21:42:21 +0000 (22:42 +0100)] 
Convert closing the TLS socket to to isc_async callback

Simplify the closing the TLS socket by using the isc_async API
from the loopmgr instead of using the asychronous netievent mechanism in
the netmgr.

3 years agoConvert accepting new TCP connection to to isc_async callback
Ondřej Surý [Thu, 23 Mar 2023 21:37:55 +0000 (22:37 +0100)] 
Convert accepting new TCP connection to to isc_async callback

Simplify the acception the new TCP connection by using the isc_async API
from the loopmgr instead of using the asychronous netievent mechanism in
the netmgr.

3 years agoConvert canceling UDP socket to to isc_async callback
Ondřej Surý [Thu, 23 Mar 2023 21:16:47 +0000 (22:16 +0100)] 
Convert canceling UDP socket to to isc_async callback

Simplify the canceling of the UDP socket by using the isc_async API
from the loopmgr instead of using the asychronous netievent mechanism in
the netmgr.

3 years agoConvert stopping TCP children to to isc_async callback
Ondřej Surý [Thu, 23 Mar 2023 11:34:49 +0000 (12:34 +0100)] 
Convert stopping TCP children to to isc_async callback

Simplify the stopping of the TCP children by using the isc_async API
from the loopmgr instead of using the asychronous netievent mechanism in
the netmgr.

3 years agoConvert starting TCP children to to isc_async callback
Ondřej Surý [Thu, 23 Mar 2023 11:18:18 +0000 (12:18 +0100)] 
Convert starting TCP children to to isc_async callback

Simplify the starting of the TCP children by using the isc_async API
from the loopmgr instead of using the asychronous netievent mechanism in
the netmgr.

3 years agoConvert stopping UDP children to to isc_async callback
Ondřej Surý [Thu, 23 Mar 2023 11:11:04 +0000 (12:11 +0100)] 
Convert stopping UDP children to to isc_async callback

Simplify the stopping of the UDP children by using the isc_async API
from the loopmgr instead of using the asychronous netievent mechanism in
the netmgr.

3 years agoConvert starting UDP children to to isc_async callback
Ondřej Surý [Thu, 23 Mar 2023 10:48:04 +0000 (11:48 +0100)] 
Convert starting UDP children to to isc_async callback

Simplify the starting of the UDP children by using the isc_async API
from the loopmgr instead of using the asychronous netievent mechanism in
the netmgr.

3 years agoSimplify netmgr active handles accounting
Ondřej Surý [Thu, 23 Mar 2023 08:47:47 +0000 (09:47 +0100)] 
Simplify netmgr active handles accounting

The active handles accounting was both using atomic counter and ISC_LIST
to keep track of active handles.  Remove the atomic counter that was in
use before the ISC_LIST was added for better tracking of the handles
attached to the socket.

3 years agoConvert netmgr handle detach to synchronous callback
Ondřej Surý [Thu, 23 Mar 2023 07:55:29 +0000 (08:55 +0100)] 
Convert netmgr handle detach to synchronous callback

Instead of calling isc__nmhandle_detach calling
nmhandle_detach_cb() asynchronously when there's closehandle_cb
initialized, convert the closehandle_cb to use isc_job, and make the
isc__nmhandle_detach() to be fully synchronous.

3 years agoConvert netmgr connect, read and send callbacks to isc_job
Ondřej Surý [Thu, 23 Mar 2023 05:56:17 +0000 (06:56 +0100)] 
Convert netmgr connect, read and send callbacks to isc_job

The netmgr connect, read and send callbacks can now only be executed on
the same loop, convert it from asynchronous netievent queue event to
more direct isc_job.

3 years agoMerge branch '3953-remove-delegation-only' into 'main'
Evan Hunt [Thu, 23 Mar 2023 20:21:13 +0000 (20:21 +0000)] 
Merge branch '3953-remove-delegation-only' into 'main'

remove delegation-only and root-delegation only

Closes #3953

See merge request isc-projects/bind9!7713

3 years agorevised CHANGES and release note for [GL #3953]
Evan Hunt [Thu, 23 Mar 2023 00:00:27 +0000 (17:00 -0700)] 
revised CHANGES and release note for [GL #3953]

3 years agoremove {root-}delegation-only
Evan Hunt [Wed, 22 Mar 2023 23:57:54 +0000 (16:57 -0700)] 
remove {root-}delegation-only

complete the removal of the delegation-only and root-delegation-only
options, and the delegation-only zone type.

3 years agoMerge branch '3953-deprecate-delegation-only' into 'main'
Ondřej Surý [Thu, 23 Mar 2023 19:06:10 +0000 (19:06 +0000)] 
Merge branch '3953-deprecate-delegation-only' into 'main'

deprecate delegation-only and root-delegation only

See merge request isc-projects/bind9!7712

3 years agoCHANGES and release note for [GL #3953]
Evan Hunt [Wed, 22 Mar 2023 22:06:58 +0000 (15:06 -0700)] 
CHANGES and release note for [GL #3953]

3 years agodeprecate delegation-only and root-delegation only
Evan Hunt [Wed, 22 Mar 2023 22:01:30 +0000 (15:01 -0700)] 
deprecate delegation-only and root-delegation only

These options and zone type were created to address the
SiteFinder controversy, in which certain TLD's redirected queries
rather than returning NXDOMAIN. since TLD's are now DNSSEC-signed,
this is no longer likely to be a problem.

The deprecation message for 'type delegation-only' is issued from
the configuration checker rather than the parser. therefore,
isccfg_check_namedconf() has been modified to take a 'nodeprecate'
parameter to suppress the warning when named-checkconf is used with
the command-line option to ignore warnings on deprecated options (-i).

3 years agoMerge branch '3960-handle-non-ISC_R_SUCCESS-in-rctx_respinit' into 'main'
Ondřej Surý [Thu, 23 Mar 2023 11:21:33 +0000 (11:21 +0000)] 
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

3 years agoProperly handle ISC_R_SHUTTINGDOWN in resquery_response()
Ondřej Surý [Thu, 23 Mar 2023 09:48:39 +0000 (10:48 +0100)] 
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.

3 years agoMerge branch 'mnowak/adapt-release-tarball-comparison-to-tags-with-dots' into 'main'
Michal Nowak [Wed, 22 Mar 2023 15:07:43 +0000 (15:07 +0000)] 
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

3 years agoAdapt release-tarball-comparison.sh to dotted tag notation
Michal Nowak [Thu, 16 Mar 2023 11:59:57 +0000 (12:59 +0100)] 
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.

3 years agoMerge branch '3665-dupsigs-test-stability' into 'main'
Tom Krizek [Wed, 22 Mar 2023 09:55:33 +0000 (09:55 +0000)] 
Merge branch '3665-dupsigs-test-stability' into 'main'

Improve dupsigs test stability

Closes #3665

See merge request isc-projects/bind9!7688

3 years agoLighten the CI load during the dupsigs test
Tom Krizek [Mon, 13 Mar 2023 16:45:20 +0000 (17:45 +0100)] 
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.

3 years agoEnd dupsigs test early if it fails
Tom Krizek [Mon, 13 Mar 2023 14:16:35 +0000 (15:16 +0100)] 
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.

3 years agoStore dupsigs axfr to a file for easier debugging
Tom Krizek [Tue, 14 Mar 2023 09:33:47 +0000 (10:33 +0100)] 
Store dupsigs axfr to a file for easier debugging

3 years agoRedirect dupsigs test output to proper logger
Tom Krizek [Mon, 13 Mar 2023 14:13:44 +0000 (15:13 +0100)] 
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.

3 years agoMerge branch '3955-hold-catz-reference-during-update' into 'main'
Arаm Sаrgsyаn [Tue, 21 Mar 2023 11:39:46 +0000 (11:39 +0000)] 
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

3 years agoAdd a CHANGES note for [GL #3955]
Aram Sargsyan [Tue, 21 Mar 2023 10:06:07 +0000 (10:06 +0000)] 
Add a CHANGES note for [GL #3955]

3 years agoHold a catz reference while the update process is running
Aram Sargsyan [Tue, 21 Mar 2023 09:56:36 +0000 (09:56 +0000)] 
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.

3 years agoMerge branch 'mnowak/respdiff-drop-allow_failure' into 'main'
Michal Nowak [Fri, 17 Mar 2023 10:08:40 +0000 (10:08 +0000)] 
Merge branch 'mnowak/respdiff-drop-allow_failure' into 'main'

respdiff jobs do not need "allow_failure: true"

See merge request isc-projects/bind9!7681

3 years agorespdiff jobs do not need "allow_failure: true"
Michal Nowak [Mon, 13 Mar 2023 15:46:13 +0000 (16:46 +0100)] 
respdiff jobs do not need "allow_failure: true"

ASAN and TSAN respdiff jobs should be stable and not require
"allow_failure: true" anymore.

3 years agoMerge branch 'each-key-restore-test' into 'main'
Evan Hunt [Fri, 17 Mar 2023 06:09:28 +0000 (06:09 +0000)] 
Merge branch 'each-key-restore-test' into 'main'

add basic test for TSIG key dump/restore functionality

See merge request isc-projects/bind9!7629

3 years agoadd basic test for TSIG key dump/restore functionality
Evan Hunt [Wed, 1 Mar 2023 02:29:38 +0000 (18:29 -0800)] 
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.

3 years agoMerge branch 'tkrizek/ci-artifacts-1d' into 'main'
Tom Krizek [Thu, 16 Mar 2023 14:04:36 +0000 (14:04 +0000)] 
Merge branch 'tkrizek/ci-artifacts-1d' into 'main'

Use the default retention time for CI artifacts

See merge request isc-projects/bind9!7670

3 years agoUse the default retention time for CI artifacts
Tom Krizek [Thu, 9 Mar 2023 12:33:31 +0000 (13:33 +0100)] 
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.

3 years agoMove gitlab-ci.yml comment to its proper place
Tom Krizek [Thu, 9 Mar 2023 12:30:41 +0000 (13:30 +0100)] 
Move gitlab-ci.yml comment to its proper place

The comment refers to "interruptible" key, rather than the entire
"default" section.

3 years agoMerge tag 'v9_19_11'
Tom Krizek [Wed, 15 Mar 2023 17:23:44 +0000 (18:23 +0100)] 
Merge tag 'v9_19_11'

BIND 9.19.11

3 years agoMerge branch 'artem-remove-tlsdns-and-tcpdns-leftouts' into 'main'
Artem Boldariev [Wed, 15 Mar 2023 16:55:07 +0000 (16:55 +0000)] 
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