2
0
mirror of https://gitlab.isc.org/isc-projects/bind9 synced 2025-08-29 05:28:00 +00:00

38638 Commits

Author SHA1 Message Date
Evan Hunt
fe7ed2ba24 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.
2023-03-28 12:38:28 -07:00
Evan Hunt
4ad95e0567 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.
2023-03-28 12:38:28 -07:00
Evan Hunt
33a741f897 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().
2023-03-28 12:38:27 -07:00
Michal Nowak
2587fefbaa 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
2023-03-28 14:33:38 +00:00
Michal Nowak
2b9111b435
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.
2023-03-28 16:23:35 +02:00
Michal Nowak
f86d4f3bd8
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.
2023-03-28 16:23:35 +02:00
Matthijs Mekking
a8fbdbe400 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
2023-03-28 12:57:49 +00:00
Matthijs Mekking
357b27b04f Add CHANGES entry for #3965 2023-03-28 14:57:14 +02:00
Matthijs Mekking
4c33277446 Fix scan-build issue: initialized value never read
Value stored to 'source' during its initialization is never read.
2023-03-28 14:56:56 +02:00
Tom Krizek
91c4792527 Merge branch 'tkrizek/gh-actions-branch-name-update' into 'main'
Update branch&tag name conventions

See merge request isc-projects/bind9!7697
2023-03-27 15:12:14 +00:00
Tom Krizek
5248a3e7db
Update branch&tag naming convention in CONTRIBUTING 2023-03-27 17:09:11 +02:00
Tom Krizek
ee53e3c02d
Update github actions to trigger on correct branches
The naming convention for maintanence branches was changed from `vX_Y`
to `bind-X.Y`.
2023-03-27 17:09:09 +02:00
Tom Krizek
d942c244f5 Merge branch '3962-doc-arm-fixes' into 'main'
Documentation formatting fixes in ARM

Closes #3962

See merge request isc-projects/bind9!7723
2023-03-27 15:07:31 +00:00
Tom Krizek
36a5c098bd
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.
2023-03-27 16:51:12 +02:00
Tom Krizek
1849c02606
Add missing newline in documentation code example 2023-03-27 16:51:10 +02:00
Michal Nowak
5c39b119c9 Merge branch 'mnowak/suppress-gitlab-clean-up-output' into 'main'
Suppress Git clean output in GitLab CI

See merge request isc-projects/bind9!7702
2023-03-27 13:04:45 +00:00
Michal Nowak
ddb33a12fc
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.
2023-03-27 15:02:06 +02:00
Petr Špaček
24fc7f040e Merge branch 'pspacek/qmin-docs-describe-underscore' into 'main'
Clarify qname-minimization relaxed in the ARM

See merge request isc-projects/bind9!7646
2023-03-27 12:58:48 +00:00
Petr Špaček
02430a7263
Clarify qname-minimization relaxed in the ARM
Leading underscore in qname confused some users, and it was not
documented.
2023-03-27 14:54:12 +02:00
Arаm Sаrgsyаn
6a4e1d3787 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
2023-03-27 11:35:43 +00:00
Aram Sargsyan
95cb2affaa Add a CHANGES note for [GL #3968] 2023-03-27 11:09:13 +00:00
Aram Sargsyan
a2817541b3 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.
2023-03-27 11:02:25 +00:00
Evan Hunt
2c3bbf31cf Merge branch 'each-replay-merge' into 'main'
revise branch format

See merge request isc-projects/bind9!7719
2023-03-24 20:46:46 +00:00
Tom Krizek
5fbbb46a60 Update tag name convention in release checklist 2023-03-24 20:46:34 +00:00
Evan Hunt
6e9fce7a02 revise branch format
backport branches are now called "bind-9.x" instead of "v9_x".
2023-03-24 20:46:34 +00:00
Ondřej Surý
44636fd812 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
2023-03-24 07:59:44 +00:00
Evan Hunt
5cefc52b2e
CHANGES for [GL #3964] 2023-03-24 07:58:53 +01:00
Ondřej Surý
a2e4a6883f
Remove the netievent remnants
After removing all functional netievents, remove what has been left from
the netievents.  This also includes leftovers from previous refactorings.
2023-03-24 07:58:53 +01:00
Ondřej Surý
6b107c3fbc
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.
2023-03-24 07:58:53 +01:00
Ondřej Surý
744e93b70d
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.
2023-03-24 07:58:53 +01:00
Ondřej Surý
7ddc49d66a
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.
2023-03-24 07:58:53 +01:00
Ondřej Surý
2185dc75f0
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.
2023-03-24 07:58:52 +01:00
Ondřej Surý
4a4bd68777
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.
2023-03-24 07:58:52 +01:00
Ondřej Surý
115160de73
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.
2023-03-24 07:58:52 +01:00
Ondřej Surý
a321d3f419
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.
2023-03-24 07:58:52 +01:00
Ondřej Surý
8c48c51f71
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.
2023-03-24 07:58:52 +01:00
Ondřej Surý
3d4d099ac8
Cleanup already defunct tlsconnect netievent
The netievent used for TLS connect was already defunct, just cleanup the
cruft.
2023-03-24 07:58:52 +01:00
Ondřej Surý
35b4ef0a08
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.
2023-03-24 07:58:52 +01:00
Ondřej Surý
4f27b14cd1
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.
2023-03-24 07:58:52 +01:00
Ondřej Surý
e185412872
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.
2023-03-24 07:58:52 +01:00
Ondřej Surý
1baffb6ff5
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.
2023-03-24 07:58:52 +01:00
Ondřej Surý
4419848efd
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.
2023-03-24 07:58:52 +01:00
Ondřej Surý
e1524f2b4e
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.
2023-03-24 07:58:52 +01:00
Ondřej Surý
8cb4cfd9db
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.
2023-03-24 07:58:52 +01:00
Ondřej Surý
b25dd5eaf5
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.
2023-03-24 07:58:52 +01:00
Ondřej Surý
5a43be0775
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.
2023-03-24 07:58:52 +01:00
Ondřej Surý
96cff4fc51
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.
2023-03-24 07:58:52 +01:00
Ondřej Surý
237f4af152 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.
2023-03-23 22:33:40 -07:00
Evan Hunt
a61f3156bd Merge branch '3953-remove-delegation-only' into 'main'
remove delegation-only and root-delegation only

Closes #3953

See merge request isc-projects/bind9!7713
2023-03-23 20:21:13 +00:00
Evan Hunt
08c86c4357 revised CHANGES and release note for [GL #3953] 2023-03-23 12:57:01 -07:00