Commit Graph

38949 Commits

Author SHA1 Message Date
Artem Boldariev
a98607d2ce Modify release notes [GL #4473]
Mention that an intermittent BIND process termination in DoH code has
been fixed.
2024-06-10 18:37:56 +02:00
Artem Boldariev
8132f4c020 Modify CHANGES [GL #4473]
Mention that an intermittent BIND process termination in DoH code has
been fixed.

(cherry picked from commit 773a8108f307b4f6cc7776050d85432295b13a4d)
2024-06-10 18:36:17 +02:00
Artem Boldariev
998522e68e Keep the endpoints set reference within an HTTP/2 socket
This commit ensures that an HTTP endpoints set reference is stored in
a socket object associated with an HTTP/2 stream instead of
referencing the global set stored inside a listener.

This helps to prevent an issue like follows:

1. BIND is configured to serve DoH clients;
2. A client is connected and one or more HTTP/2 stream is
created. Internal pointers are now pointing to the data on the
associated HTTP endpoints set;
3. BIND is reconfigured - the new endpoints set object is created and
promoted to all listeners;
4. The old pointers to the HTTP endpoints set data are now invalid.

Instead referencing a global object that is updated on
re-configurations we now store a local reference which prevents the
endpoints set objects to go out of scope prematurely.

(cherry picked from commit b9b5d0c01a3a546c4a6a8b3bff8ae9dd31fee224)
2024-06-10 18:35:18 +02:00
Artem Boldariev
b601a5b781 DoH: avoid potential use after free for HTTP/2 session objects
It was reported that HTTP/2 session might get closed or even deleted
before all async. processing has been completed.

This commit addresses that: now we are avoiding using the object when
we do not need it or specifically check if the pointers used are not
'NULL' and by ensuring that there is at least one reference to the
session object while we are doing incoming data processing.

This commit makes the code more resilient to such issues in the
future.

(cherry picked from commit 0cca550dff403c6100b7c0da8f252e7967765ba7)
2024-06-10 18:35:16 +02:00
Nicki Křížek
3be849bfab Merge branch '4661-confidential-clear-dns-fetchopt-trystale-ontimeout' into 'v9.18.28-release'
Prevent passing DNS_EVENT_TRYSTALE events to resume_dslookup()

See merge request isc-private/bind9!678
2024-06-10 16:34:02 +00:00
Mark Andrews
6c740fa78b Add release note for [GL #4661] 2024-06-10 18:28:53 +02:00
Mark Andrews
dbc06313a6 Add CHANGES not for [GL #4661] 2024-06-10 18:28:44 +02:00
Mark Andrews
6455527830 Clear DNS_FETCHOPT_TRYSTALE_ONTIMEOUT
When calling dns_resolver_createfetch in resolver.c with a callback
of resume_dslookup, clear DNS_FETCHOPT_TRYSTALE_ONTIMEOUT from
options as DNS_EVENT_TRYSTALE is not an expected event type and
triggers a REQUIRE.
2024-06-06 07:48:49 +02:00
Mark Andrews
2c05f40eae Merge branch '2744-warning-checkhints-unable-to-get-root-ns-rrset-from-cache-not-found-9.18' into 'bind-9.18'
[9.18] Resolve "warning: checkhints: unable to get root NS rrset from cache: not found"

See merge request isc-projects/bind9!9080
2024-06-04 13:11:18 +00:00
Mark Andrews
455c262649 Add CHANGES entry for [GL #2744]
(cherry picked from commit 5be6ceebc4)
2024-06-04 12:42:05 +00:00
Mark Andrews
13be6cd991 Pass a memory context in to dns_cache_create
(cherry picked from commit 87e3b9dbf3)
2024-06-04 12:42:05 +00:00
Mark Andrews
26ad166a05 Use a new memory context when flushing the cache
When the cache's memory context was in over memory state when the
cache was flushed it resulted in LRU cleaning removing newly entered
data in the new cache straight away until the old cache had been
destroyed enough to take it out of over memory state.  When flushing
the cache create a new memory context for the new db to prevent this.

(cherry picked from commit 5e77edd074)
2024-06-04 12:42:05 +00:00
Mark Andrews
2c5a13008f Merge branch '4736-isc_r_hostdown-was-not-being-handled-by-resolver-c-9.18' into 'bind-9.18'
[9.18] Resolve "ISC_R_HOSTDOWN was not being handled by resolver.c"

See merge request isc-projects/bind9!9088
2024-06-04 08:10:59 +00:00
Mark Andrews
c22b590dc3 Add CHANGES note for [GL #4736]
(cherry picked from commit 71cfa8dfba)
2024-06-04 07:38:40 +00:00
Mark Andrews
d3f708ba56 Update resquery_senddone handling of ISC_R_TIMEDOUT
Treat timed out as an address specific error.

(cherry picked from commit 56c3dcc5d7)
2024-06-04 07:38:40 +00:00
Mark Andrews
99d2b4079f Update resquery_senddone handling of ISC_R_CONNECTIONRESET
Treat connection reset as an address specific error.

(cherry picked from commit 4e3dd85b8d)
2024-06-04 07:38:40 +00:00
Mark Andrews
e87a5e7bff Handle ISC_R_HOSTDOWN and ISC_R_NETDOWN in resolver.c
These error codes should be treated like other unreachable error
codes.

(cherry picked from commit 180b1e7939)
2024-06-04 07:38:40 +00:00
Mark Andrews
df99aac72c Merge branch '3472-ipv4-only-mode-not-respected-for-zone-transfers-9.18' into 'bind-9.18'
[9.18] Resolve "IPv4-only mode not respected for zone transfers"

See merge request isc-projects/bind9!9085
2024-06-03 23:59:36 +00:00
Mark Andrews
f1d2b0e5fd Add CHANGES note for [GL #6288]
(cherry picked from commit 3834e433f7)
2024-06-03 13:52:37 +00:00
Mark Andrews
69dde597b9 Don't do DS checks over disabled address families
(cherry picked from commit 05472e63e8)
2024-06-03 13:52:37 +00:00
Mark Andrews
542e891287 Don't forward UPDATE messages over disabled address families
(cherry picked from commit d026dbe536)
2024-06-03 13:52:37 +00:00
Mark Andrews
c6a207c710 Don't send NOTIFY over disabled address families
(cherry picked from commit 5d99625515)
2024-06-03 13:52:37 +00:00
Mark Andrews
4be2caa345 Check that no primaries is logged with -4 or -6
When in -4 mode check that "IPv6 disabled and no IPv4 primaries"
is logged and when in -6 mode check that "IPv4 disabled and no IPv6
primaries" is logged.

(cherry picked from commit 07cdf3e945)
2024-06-03 13:52:37 +00:00
Mark Andrews
96754276a7 Report non-effective primaries
When named is started with -4 or -6 and the primaries for a zone
do not have an IPv4 or IPv6 address respectively issue a log message.

(cherry picked from commit 2cd4303249)
2024-06-03 13:52:37 +00:00
Mark Andrews
7a9ac0491f Zone transfers should honour -4 and -6 options
Check if the address family has been disabled when transferring
zones.

(cherry picked from commit ecdde04e63)
2024-06-03 13:52:37 +00:00
Mark Andrews
e0af62deac Add helper function isc_sockaddr_disabled
(cherry picked from commit 9be1873ef3)
2024-06-03 13:52:37 +00:00
Michał Kępień
cc0e745ab0 Merge branch '4706-4707-add-more-label-checks-to-dangerfile.py-9.18' into 'bind-9.18'
[9.18] Add more label checks to dangerfile.py

See merge request isc-projects/bind9!9086
2024-06-03 11:15:46 +00:00
Michał Kępień
97eca56161 Fail for merge requests with "Affects v9.x" labels
Setting "Affects v9.x" labels on a merge request duplicates information
already present on the GitLab issue associated with that merge request.
For trivial merge requests that are not associated with any GitLab
issue, setting the "Affects v9.x" label(s) is considered unnecessary.
Trigger a failure for every merge request marked with at least one
"Affects v9.x" label.

(cherry picked from commit aae51cf28d)
2024-06-03 11:11:38 +00:00
Michał Kępień
45dbfe8ccc Warn about auto-generated merge request titles
Merge request titles auto-generated by GitLab are often a source of
confusion regarding the actual contents of a given merge request.  Warn
for merge requests containing titles that look like auto-generated ones.

(cherry picked from commit 80ec57f198)
2024-06-03 11:11:37 +00:00
Michał Kępień
8b3d63d455 Fail for branches using old-style version suffixes
Using "-v9_x" and "-v9.x" version suffixes for branch names is now
deprecated since some automation logic does not handle these.  Fail for
any merge request using such old-style version suffixes.

(cherry picked from commit 09851e6230)
2024-06-03 11:11:37 +00:00
Michał Kępień
363f7bacaa Fail for backports with "Affects v9.x" labels set
Backports are not expected to have any "Affects v9.x" labels set since
those are only meant to be set for merge requests that should have
backports created for them.

(cherry picked from commit 9359cb9c99)
2024-06-03 11:11:37 +00:00
Matthijs Mekking
f59a47abd8 Merge branch '4708-uv-tcp-close-reset-issue-9.18' into 'bind-9.18'
[9.18] Deal with uv_tcp_close_reset more gracefully

See merge request isc-projects/bind9!9084
2024-06-03 08:51:44 +00:00
Matthijs Mekking
01934f9def Add CHANGES entry for [GL #4708]
(cherry picked from commit 113968f3a0)
2024-06-03 10:22:08 +02:00
Matthijs Mekking
e1a49ee6d4 Call reset_shutdown if uv_tcp_close_reset failed
If uv_tcp_close_reset() returns an error code, this means the
reset_shutdown callback has not been issued, so do it now.

(cherry picked from commit c40e5c8653)
2024-06-03 08:16:32 +00:00
Matthijs Mekking
6f6d90fd51 Do not runtime check uv_tcp_close_reset
When we reset a TCP connection by sending a RST packet, do not bother
requiring the result is a success code.

(cherry picked from commit 5b94bb2129)
2024-06-03 08:16:32 +00:00
Aydın Mercan
eaacc6d4d6 Merge branch '4742-tcp4clients-statistic-is-inaccurate' into 'bind-9.18'
Increase TCP4Clients/TCP6Clients after point of no failure

See merge request isc-projects/bind9!9066
2024-05-30 11:28:48 +00:00
Michał Kępień
cb79240091 Document TCP4Clients/TCP6Clients
Commit abc47f5ce4 added two new statistics
counters without documenting them.  Add the missing counter descriptions
to the ARM.
2024-05-30 13:39:23 +03:00
Aydın Mercan
1dc58c31be add CHANGES and release note for GL #4425 2024-05-30 13:39:23 +03:00
Aydın Mercan
dc9f55da5b increase TCP4Clients/TCP6Clients after point of no failure
Failing to accept TCP/TLS connections in 9.18 detaches the quota in
isc__nm_failed_accept_cb, causing TCP4Clients and TCP6Clients statistics
to not decrease inside cleanup.

Fix by increasing the counter after the point of no failure but before
handling statistics through the client's socket is no longer valid.
2024-05-30 13:39:23 +03:00
Ondřej Surý
b51e308dab Merge branch '4750-set-loop-on-incoming-transfer-9.18' into 'bind-9.18'
[9.18] Create the new database for AXFR from the dns_zone API

See merge request isc-projects/bind9!9075
2024-05-29 07:37:55 +00:00
Ondřej Surý
7c275be420 Create the new database for AXFR from the dns_zone API
The `axfr_makedb()` didn't set the loop on the newly created database,
effectively killing delayed cleaning on such database.  Move the
database creation into dns_zone API that knows all the gory details of
creating new database suitable for the zone.

(cherry picked from commit 3310cac2b0)
2024-05-29 08:56:38 +02:00
Nicki Křížek
dc8b420331 Merge branch 'nicki/use-bind-team-gitlab-tokens-9.18' into 'bind-9.18'
[9.18] Use bind-team tokens for CI gitlab access

See merge request isc-projects/bind9!9068
2024-05-27 11:36:23 +00:00
Nicki Křížek
16322b3390 Use BIND_TEAM_WRITE_TOKEN for autobackport bot
This is done to unify the token usage across our repositories to
simplify token maintenance.

(cherry picked from commit d391f0c958)
2024-05-27 11:28:06 +00:00
Nicki Křížek
acbe0c827e Use BIND_TEAM_API_TOKEN for danger bot
This is done to unify the token usage across our repositories to
simplify token maintenance.

(cherry picked from commit 6767172bc0)
2024-05-27 11:28:06 +00:00
Michal Nowak
30170190d7 Merge branch 'mnowak/alpine-3.20-9.18' into 'bind-9.18'
[9.18] Add Alpine Linux 3.20

See merge request isc-projects/bind9!9060
2024-05-23 12:12:33 +00:00
Michal Nowak
2a4354f88e Add Alpine Linux 3.20
(cherry picked from commit 6f22e79ef9)
2024-05-23 11:22:37 +00:00
Michal Nowak
7f81d5eb49 Merge branch 'mnowak/short-stress-tests-should-keep-artifacts-9.18' into 'bind-9.18'
[9.18] Short stress tests should keep artifacts

See merge request isc-projects/bind9!9057
2024-05-22 12:14:00 +00:00
Michal Nowak
312e84fe73 Short stress tests should keep artifacts
(cherry picked from commit aa72747c80)
2024-05-22 10:56:00 +00:00
Evan Hunt
eea1a27dd4 Merge branch '4730-clang-format-header-file-changes-bind-9.18' into 'bind-9.18'
[9.18] Resolve "Clang format header file changes"

See merge request isc-projects/bind9!9053
2024-05-17 23:55:10 +00:00
Mark Andrews
a3cdf22b60 Ignore reformat sources with up-to-date clang-format-18 2024-05-17 16:22:56 -07:00