Commit Graph

38409 Commits

Author SHA1 Message Date
Mark Andrews
1a52dccd32 Handle multiple NSEC3PARAM records in tests
When transitioning from one NSEC3 chain to another it is legal for
there to be multiple complete chains in the zone with multiple
NSEC3PARAM records.  Handle this intermediate state by checking
for the expected length in the loop.
2024-01-03 09:25:43 +11:00
Mark Andrews
d5aa22ec74 Add CHANGES for [GL #1794] and [GL #4459]
(cherry picked from commit 9b5ed853d0)
2024-01-03 09:25:43 +11:00
Matthijs Mekking
b9fc29cb95 Regression check for NSEC3 to NSEC3 conversion
When changing the NSEC3 chain, the new NSEC3 chain must be built before
the old NSEC3PARAM is removed.  Check each delta in the conversion to
ensure this ordering is met.

(cherry picked from commit 1d6b892e04)
2024-01-03 09:25:43 +11:00
Mark Andrews
7e24befc2a Regression check for NSEC3 to NSEC conversion
When transitioning from NSEC3 to NSEC the NSEC3 must be built before
the NSEC3PARAM is removed.  Check each delta in the conversion to
ensure this ordering is met.

(cherry picked from commit 7d90c056b0)
2024-01-03 09:25:43 +11:00
Mark Andrews
d78df5f96d Don't delete the NSEC3PARAM immediately
Wait until the new NSEC or NSEC3 chain is generated then it should
be deleted.

(cherry picked from commit f3ae88d84e)
2023-12-21 22:07:53 +11:00
Tom Krizek
52770b05d3 Merge branch 'tkrizek/update-sphinx_rtd_theme-9.18' into 'bind-9.18'
[9.18] Update sphinx_rtd_theme and docutils

See merge request isc-projects/bind9!8604
2023-12-21 10:08:50 +00:00
Tom Krizek
916b121e42 Update sphinx_rtd_theme and docutils
(cherry picked from commit 4156fa09d9)
2023-12-21 10:33:26 +01:00
Mark Andrews
b072bf612f Merge branch '4488-memory-reference-leak-in-lib-dns-zone-c-zone_sign-bind-9.18' into 'bind-9.18'
[9.18] Resolve "Memory/reference leak in lib/dns/zone.c:zone_sign" !8570

See merge request isc-projects/bind9!8607
2023-12-20 23:48:28 +00:00
Mark Andrews
7b10f5f154 Add CHANGES note for [GL #4488]
(cherry picked from commit 4e4200ee2e)
2023-12-21 10:06:29 +11:00
Mark Andrews
0ceb01386c Don't look for KSK status here and squash memory leak
Just remove the key from  consideration as it is being removed.

The old code could leak a key reference as dst_free_key was not
called every time we continued. This simplification will address
this as well.

(cherry picked from commit a3d0476d17)
2023-12-21 10:05:54 +11:00
Tom Krizek
b04849c46a Merge tag 'v9.18.21' into bind-9.18 2023-12-20 16:07:25 +01:00
Mark Andrews
8f34392979 Merge branch '4498-gl-4495-followup-regression-test-was-too-strict-bind-9.18' into 'bind-9.18'
[9.18] Resolve "[GL #4494] followup: regression test was too strict"

See merge request isc-projects/bind9!8598
2023-12-20 00:46:40 +00:00
Mark Andrews
38babba214 The NSEC3 -> NSEC private record may be added later
Check each delta for the NSEC3 -> NSEC private record addition
as it may be added in the second delta.

(cherry picked from commit 80a4dff986)
2023-12-20 11:11:12 +11:00
Mark Andrews
a26693e987 Merge branch '4500-log-the-change-that-generated-not-exact-when-applying-a-diff-bind-9.18' into 'bind-9.18'
[9.18] Resolve "Log the change that generated "not exact" when applying a diff."

See merge request isc-projects/bind9!8596
2023-12-19 22:04:20 +00:00
Mark Andrews
39f2fe0c7a Add CHANGES entry for [GL #4500]
(cherry picked from commit 71d67b6fdf)
2023-12-20 02:48:13 +11:00
Mark Andrews
a2bcd4fc0e Log what change generated a 'not exact' error
(cherry picked from commit c896e07277)
2023-12-20 02:47:42 +11:00
Mark Andrews
c5fee06ff9 Merge branch '4494-add_sigs-was-using-the-wrong-time-in-kasp-mode-bind-9.18' into 'bind-9.18'
[9.18] Resolve "add_sigs was using the wrong time in kasp mode"

See merge request isc-projects/bind9!8588
2023-12-19 02:27:53 +00:00
Mark Andrews
74d61641e1 Add CHANGES note for [GL #4494]
(cherry picked from commit 94b00f44ae)
2023-12-19 12:44:49 +11:00
Mark Andrews
15601cca43 Regression check for missing RRSIGs
When transitioning from NSEC3 to NSEC the added records where not
being signed because the wrong time was being used to determine if
a key should be used or not.  Check that these records are actually
signed.

(cherry picked from commit bdb42d3838)
2023-12-19 12:44:27 +11:00
Mark Andrews
65fdc892eb Use 'now' rather than 'inception' in 'add_sigs'
When kasp support was added 'inception' was used as a proxy for
'now' and resulted in signatures not being generated or the wrong
signatures being generated.  'inception' is the time to be set
in the signatures being generated and is usually in the past to
allow for clock skew.  'now' determines what keys are to be used
for signing.

(cherry picked from commit 6066e41948)
2023-12-19 12:39:16 +11:00
Michał Kępień
3713d6c909 Merge branch '4497-trust-anchor-telemetry-is-no-longer-experimental-9.18' into 'bind-9.18'
[9.18] "trust-anchor-telemetry" is no longer experimental

See merge request isc-projects/bind9!8587
2023-12-18 14:50:16 +00:00
Michał Kępień
6961509039 Add CHANGES entry for GL #4497
(cherry picked from commit 693fee4836)
2023-12-18 15:13:34 +01:00
Michał Kępień
8882d88731 "trust-anchor-telemetry" is no longer experimental
Remove the CFG_CLAUSEFLAG_EXPERIMENTAL flag from the
"trust-anchor-telemetry" statement as the behavior of the latter has not
been changed since its initial implementation and there are currently no
plans to do so.  This silences a relevant log message that was emitted
even when the feature was explicitly disabled.

(cherry picked from commit b1baf7af3a)
2023-12-18 15:13:34 +01:00
Arаm Sаrgsyаn
8f9c0eb284 Merge branch '4477-tests-statschannel-loadtime-bugfix-9.18' into 'bind-9.18'
[9.18] Resolve "statschannel test intermittently fails with incorrect zone loadtime"

See merge request isc-projects/bind9!8583
2023-12-18 10:24:49 +00:00
Aram Sargsyan
ba923834b2 Fix a statschannel system test zone loadtime issue
The check_loaded() function compares the zone's loadtime value and
an expected loadtime value, which is based on the zone file's mtime
extracted from the filesystem.

For the secondary zones there may be cases, when the zone file isn't
ready yet before the zone transfer is complete and the zone file is
dumped to the disk, so a so zero value mtime is retrieved.

In such cases wait one second and retry until timeout. Also modify
the affected check to allow a possible difference of the same amount
of seconds as the chosen timeout value.

(cherry picked from commit 4e94ff2541)
2023-12-18 09:34:31 +00:00
Mark Andrews
418a1ad762 Merge branch '4478-redefinition-of-hmac-as-different-kind-of-symbol-on-netbsd-bind-9.18' into 'bind-9.18'
[9.18] Resolve "Redefinition of 'hmac' as different kind of symbol on NetBSD"

See merge request isc-projects/bind9!8573
2023-12-14 01:29:27 +00:00
Mark Andrews
c705fee830 Add CHANGES note for [GL #4478]
(cherry picked from commit 648fa635f8)
2023-12-14 11:14:04 +11:00
Mark Andrews
adfb365602 NetBSD has added 'hmac' to libc so rename our uses of hmac
(cherry picked from commit fd077c2661)
2023-12-14 11:14:04 +11:00
Michal Nowak
c54c268c4c Merge branch 'mnowak/alpine-3.19-9.18' into 'bind-9.18'
[9.18] Add Alpine Linux 3.19

See merge request isc-projects/bind9!8566
2023-12-12 10:42:39 +00:00
Michal Nowak
3b603d0fe5 Add Alpine Linux 3.19
(cherry picked from commit 1fc56d705e)
2023-12-12 11:12:15 +01:00
Michal Nowak
07f6d1e67f Merge branch 'mnowak/replace-danger-python-with-hazard-9.18' into 'bind-9.18'
[9.18] Replace danger-python with Hazard

See merge request isc-projects/bind9!8563
2023-12-11 17:23:57 +00:00
Tom Krizek
e97f4c0784 Handle empty MR description in dangerfile
A merge request might have no description at all (i.e. None, rather than
an empty string). This might happen when the MR is created via an API.
Check a description is present before trying to find a backport string
in it.

(cherry picked from commit 4f70f5bd7c)
2023-12-11 17:45:31 +01:00
Michał Kępień
a4fbb8edd0 Improve determining the lines added by a branch
Since the list of lines added to Git-tracked text files in a given
branch is not part of the Danger DSL [1], it is determined using custom
code in dangerfile.py.  The current implementation of that logic is less
than perfect as it examines the diff between the current tip of the
target branch and the source branch rather than the diff between the
merge base of the two branches and the source branch.  Consider a Git
history like this:

    *   F (target)
    ...
    *   E
    *   D
    *   C
    | * B (source)
    |/
    *   A (merge base)

If danger-python or Hazard are run for commit B, the current logic for
determining the list of added lines in dangerfile.py examines the diff
between commits F and B rather than between commits A and B.  Therefore,
the added_lines() function returns not just the lines added by commit B
on top of commit A, but also the list of lines that were removed between
commits A and F, which leads to confusing results.

Fix by using the triple-dot diff operator in the Git invocation whose
output is used as the source of information for determining the list of
lines added by a given branch.

Since Hazard fetches the target branch itself when it is run, remove the
explicit "git fetch" invocation that fetches the target branch from
GitLab (shortening its local history to a single commit in the process)
before "git diff" is invoked.

[1] https://danger.systems/js/reference.html#GitDSL

(cherry picked from commit 43126e81e6)
2023-12-11 17:45:29 +01:00
Michal Nowak
33ebaea600 Replace danger-python with Hazard
Hazard is a minimal danger-python replacement.

(cherry picked from commit 08ce1bc45f)
2023-12-11 17:45:28 +01:00
Tom Krizek
75b18cf01e Merge branch 'tkrizek/set-up-version-and-release-notes-for-bind-9.18.22' into 'bind-9.18'
Set up version and release notes for BIND 9.18.22

See merge request isc-projects/bind9!8561
2023-12-08 15:05:10 +00:00
Tom Krizek
cd310b4835 Set up release notes for BIND 9.18.22 2023-12-08 15:55:30 +01:00
Tom Krizek
1f93aecde3 Update BIND version to 9.18.22-dev 2023-12-08 15:55:30 +01:00
Tom Krizek
cb6cff65a9 Update BIND version for release v9.18.21 2023-12-08 12:44:04 +01:00
Tom Krizek
c482580110 Add a CHANGES marker 2023-12-08 12:44:04 +01:00
Tom Krizek
9d5aa0b7f8 Merge branch 'michal/prepare-documentation-for-bind-9.18.21' into 'v9.18.21-release'
Prepare documentation for BIND 9.18.21

See merge request isc-private/bind9!599
2023-12-08 11:43:30 +00:00
Michał Kępień
b3f116fada Tweak and reword release notes 2023-12-07 15:48:45 +01:00
Michał Kępień
35ca98d518 Prepare release notes for BIND 9.18.21 2023-12-07 15:38:31 +01:00
Ondřej Surý
bcb22e6e78 Merge branch '4448-improve-lur-cleaning-behaviour-bind-9.18' into 'bind-9.18'
[9.18] Resolve "Improve LRU cleaning behaviour" !8516

See merge request isc-projects/bind9!8556
2023-12-07 12:23:18 +00:00
Mark Andrews
c185821d96 Add CHANGES for [GL #4448]
(cherry picked from commit 6ef8d8d699)
2023-12-07 22:16:13 +11:00
Mark Andrews
9ded7428ad Use explict atomic for older compilers 2023-12-07 22:16:13 +11:00
Mark Andrews
2cc84d7678 Also cleanup the space for the rbt nodes
As we are in overmem state we want to free more memory than we are
adding so we need to add in an allowance for the rbtnodes that may
have been added and the names stored with them.  There is the node
for the owner name and a possible ENT node if there was a node split.

(cherry picked from commit 7e462c2b26)
2023-12-07 21:50:02 +11:00
Mark Andrews
8e5bd86416 Process the combined LRU lists in LRU order
Only cleanup headers that are less than equal to the rbt's last_used
time.  Adjust the rbt's last_used time when the target cleaning was
not achieved to the oldest value of the remaining set of headers.

When updating delegating NS and glue records last_used was not being
updated when it should have been.

When adding zero TTL records to the tail of the LRU lists set
last_used to rbtdb->last_used + 1 rather than now.  This appoximately
preserves the lists LRU order.

(cherry picked from commit 5e8f0e9ceb)
2023-12-07 21:34:19 +11:00
Evan Hunt
931437480a Merge branch '4405-remove-resolver-opts-bind-9.18' into 'bind-9.18'
[9.18] deprecate resolver-retry-interval and resolver-nonbackoff-tries

See merge request isc-projects/bind9!8553
2023-12-06 22:13:47 +00:00
Evan Hunt
374b4d6258 deprecate resolver-retry-interval and resolver-nonbackoff-tries
these options control default timing of retries in the resolver
for experimental purposes; they are not known to useful in production
environments.  they will be removed in the future; for now, we
only log a warning if they are used.

(cherry picked from commit 4aaa4f7dca)
2023-12-06 13:41:47 -08:00
Evan Hunt
4ee01a8b5a Merge branch '3498-glue-rehash-overflow' into 'bind-9.18'
correctly limit hash resize to RBTDB_GLUE_TABLE_MAX_BITS

See merge request isc-projects/bind9!8465
2023-12-06 19:44:40 +00:00