2
0
mirror of https://gitlab.isc.org/isc-projects/bind9 synced 2025-08-30 22:15:20 +00:00
Commit Graph

39204 Commits

Author SHA1 Message Date
Michał Kępień
45377c2e7d Apply minor corrections to CHANGES 2023-05-08 15:29:07 +02:00
Michał Kępień
eb3d6fcd13 Merge branch '4046-rndc-timeout' into 'main'
set the default rndc read timeout to 60 seconds

See merge request isc-projects/bind9!7885
2023-05-05 09:43:00 +00:00
Evan Hunt
dfc8efc467 CHANGES and release note for [GL #4046] 2023-05-05 00:07:05 -07:00
Evan Hunt
9cacf9e336 set the default rndc read timeout to 60 seconds
While the connect timeout was set to 60 seconds in rndc, the
idle read timeout was left at the default value of 30 seconds.
This commit sets it back to 60, to match the behavior in 9.16
and earlier.
2023-05-05 00:06:50 -07:00
Matthijs Mekking
af5d0a0afb Merge branch '2360-dnstap-timestamp-millis-oliverford' into 'main'
Add option to dnstap-read to print long timestamps

Closes #2360

See merge request isc-projects/bind9!7887
2023-05-04 14:17:50 +00:00
Matthijs Mekking
3eade9a6bf Add release note and CHANGES for #2360 2023-05-04 15:12:53 +02:00
Oliver Ford
3f9b8b7dfa Add option to dnstap-read to print long timestamps
Adds a -t option to dnstap-read to print timestamps with
millisecond precision
2023-05-04 15:12:53 +02:00
Oliver Ford
2e85d9faaa Change dnstap-read timestamp to millis 2023-05-04 15:02:03 +02:00
Mark Andrews
15abca01d4 Merge branch 'marka-placeholder' into 'main'
Add placeholder for [GL #3988]

See merge request isc-projects/bind9!7886
2023-05-04 03:50:45 +00:00
Mark Andrews
6fa6dafd1c Add placeholder for [GL #3988] 2023-05-04 13:14:24 +10:00
Ondřej Surý
909f008080 Merge branch '4031-remove-dead-code-from-dns_zone' into 'main'
Fix a logical flaw that would skip logging notify success

Closes #4031

See merge request isc-projects/bind9!7879
2023-05-03 19:52:22 +00:00
Ondřej Surý
b3c6ee7b9a Fix a logical flaw that would skip logging notify success
The notify_done() would never log a success as the logging part was
always skipped.  Fix the code flow in the function.
2023-05-03 21:51:20 +02:00
Matthijs Mekking
d4cf522d65 Merge branch '3991-logfile-absolutepath-bug' into 'main'
Fix purging old log files with absolute file path

Closes #3991

See merge request isc-projects/bind9!7809
2023-05-03 07:41:17 +00:00
Mark Andrews
9fcd42c672 Re-write remove_old_tsversions and greatest_version
Stop deliberately breaking const rules by copying file->name into
dirbuf and truncating it there.  Handle files located in the root
directory properly. Use unlinkat() from POSIX 200809.
2023-05-03 09:12:34 +02:00
Matthijs Mekking
ab9230b383 Add release note and CHANGES for #3991
Bug worth mentioning.
2023-05-03 09:12:33 +02:00
Matthijs Mekking
d9b1df3b5d Add log rotation test with absolute file path
Add a test to the logfileconfig system test to test log file rotation
when using absolute file paths.
2023-05-03 09:12:11 +02:00
Matthijs Mekking
9fb9670ebc Add more log/tap rotation tests
Add more tests to the dnstap system test to roll with different values.
Touch some files to make sure the number of existing files exceed the
number that we want to keep.

Add a test to the logfileconfig system test for the increment suffix.
2023-05-03 09:12:11 +02:00
Matthijs Mekking
70629d73da Fix purging old log files with absolute file path
Removing old timestamp or increment versions of log backup files did
not work when the file is an absolute path: only the entry name was
provided to the file remove function.

The dirname was also bogus, since the file separater was put back too
soon.

Fix these issues to make log file rotation work when the file is
configured to be an absolute path.
2023-05-03 09:12:11 +02:00
Evan Hunt
25a3874e1f Merge branch '4020-delv-ns-duplicate-output' into 'main'
prevent duplicate output from delv +ns

Closes #4020

See merge request isc-projects/bind9!7848
2023-05-02 20:17:41 +00:00
Evan Hunt
24802dfe93 CHANGES for [GL #4020] 2023-05-02 12:43:05 -07:00
Evan Hunt
7de2d07eb0 add a regression test for duplicate NS output
check that an NS RRset with two servers is only printed once.
2023-05-02 12:42:50 -07:00
Evan Hunt
108809ae84 prevent duplicate output from delv +ns
when printing the result of a query, delv +ns repeated the
answer RRset as many times as there were records in the RRset;
this has been fixed by suppressing the printing of records with
the same name and type as the preceding one.
2023-05-02 12:42:50 -07:00
Ondřej Surý
0d9dd5ed24 Merge branch '4043-fix-mul-check' into 'main'
configure: Fix __builtin_mul_overflow() compiler support check

Closes #4043

See merge request isc-projects/bind9!7877
2023-05-02 13:49:07 +00:00
Arjun Shankar
5d33446145 configure: Fix __builtin_mul_overflow() compiler support check
`UINT64_C(UINT64_MAX)' is redundant and leads to a compilation error
since UINT64_C involves token concatenation, causing the check to fail.

This change fixes that by using UINT64_MAX directly, and including the
appropriate header.

Signed-off-by: Arjun Shankar <arjun@redhat.com>
2023-05-02 15:48:26 +02:00
Petr Špaček
22329132ad Merge branch 'pspacek/post-release-tweaks' into 'main'
Post release tweaks

See merge request isc-projects/bind9!7840
2023-05-02 13:36:12 +00:00
Petr Špaček
585fde0474 Synchronize Sphinx package version on ReadTheDocs with our CI
Related: isc-projects/images!235
2023-05-02 15:35:29 +02:00
Petr Špaček
406595bcf2 Recommend -S edition rebase before starting out with release 2023-05-02 15:35:29 +02:00
Petr Špaček
302baae5c7 Provide examples and links for steps in release checklist 2023-05-02 15:35:29 +02:00
Petr Špaček
751062da3b Update release comparison scripts with liburcu and new Sphinx 2023-05-02 15:35:25 +02:00
Ondřej Surý
1b0512fa20 Merge branch 'mnowak/pairwise-fix-typo-in-with-liburcu-definition' into 'main'
Fix the typo in --with-liburcu=mb pairwise definition

See merge request isc-projects/bind9!7875
2023-04-28 10:12:38 +00:00
Michal Nowak
40440674b1 Fix the typo in --with-liburcu=mb pairwise definition
It was "ucru," but it should be "urcu". The pairwise CI job fails as a
result with:

    configure: error: unrecognized options: --with-libucru
2023-04-28 09:35:33 +02:00
Ondřej Surý
a80daf0836 Merge branch 'each-fix-mutex-test' into 'main'
fix commit error in mutex_test

See merge request isc-projects/bind9!7874
2023-04-28 05:06:44 +00:00
Evan Hunt
3460fe73e2 fix commit error in mutex_test
when the branch implementing mutex_test was rebased and merged,
a rebasing error was missed: the isc_threadresult and isc_threadarg
types no longer exist.
2023-04-28 02:37:29 +01:00
Ondřej Surý
af5ca782b7 Merge branch 'ondrej/add-isc_mutex-unit-test' into 'main'
Add mutex unit test

See merge request isc-projects/bind9!7858
2023-04-27 11:17:30 +00:00
Ondřej Surý
42c7694dfb Add mutex unit test
Add simple mutex unit test and mutex benchmark.  The benchmark compares
the pthread mutext with isc mutex implementation, so it's mainly useful
when developing a new isc mutex implementation.
2023-04-27 13:15:50 +02:00
Ondřej Surý
5b84a9492d Merge branch 'ondrej-urcu-fixes' into 'main'
Improve the Userspace RCU integration

See merge request isc-projects/bind9!7752
2023-04-27 10:39:51 +00:00
Ondřej Surý
6948060e01 Print out the Userspace-RCU flavor and version
The `named -V` now prints out the liburcu flavor used and the
compile-time version.
2023-04-27 12:38:53 +02:00
Tony Finch
7d1ceaf35d Move per-thread RCU setup into isc_thread
All the per-loop `libuv` setup remains in `isc_loop`, but the per-thread
RCU setup is moved to `isc_thread` alongside the other per-thread setup.
This avoids repeating the per-thread setup for `call_rcu()` helpers,
and explains a little better why some parts of the per-thread setup
is missing for `call_rcu()` helpers.

This also removes the per-loop `call_rcu()` helpers as we refactored the
isc__random_initialize() in the previous commit.
2023-04-27 12:38:53 +02:00
Ondřej Surý
65021dbf52 Move the isc_random API initialization to the thread_local variable
Instead of writing complicated wrappers for every thread, move the
initialization back to isc_random unit and check whether the random seed
was initialized with a thread_local variable.

Ensure that isc_entropy_get() returns a non-zero seed.

This avoids problems with thread sanitizer tests getting stuck in an
infinite loop.
2023-04-27 12:38:53 +02:00
Tony Finch
e0248bf60f Simplify isc_thread a little
Remove the `isc_threadarg_t` and `isc_threadresult_t`
typedefs which were unhelpful disguises for `void *`,
and free the dummy jemalloc allocation sooner.
2023-04-27 12:38:53 +02:00
Tony Finch
06f534fa69 Avoid spurious compilation failures in liburcu headers
When liburcu is not installed from a system package, its headers are
not treated as system headers by the compiler, so BIND's -Werror and
other warning options take effect. The liburcu headers have a lot
of inline functions, some of which do not use all their arguments,
which BIND's build treats as an error.
2023-04-27 12:38:53 +02:00
Ondřej Surý
c2c907d728 Improve the Userspace RCU integration
This commit allows BIND 9 to be compiled with different flavours of
Userspace RCU, and improves the integration between Userspace RCU and
our event loop:

- In the RCU QSBR, the thread is put offline when polling and online
  when rcu_dereference, rcu_assign_pointer (or friends) are called.

- In other RCU modes, we check that we are not reading when reaching the
  quiescent callback in the event loop.

- We register the thread before uv_work_run() callback is called and
  after it has finished.  The rcu_(un)register_thread() has a large
  overhead, but that's fine in this case.
2023-04-27 12:38:53 +02:00
Ondřej Surý
2aaf58a641 Merge branch '4018-use-server-socket-to-log-accept-failures' into 'main'
Use server socket to log TCP accept failures

Closes #4018

See merge request isc-projects/bind9!7851
2023-04-27 10:12:22 +00:00
Ondřej Surý
0bf70cb143 Add CHANGES note for [GL #4018] 2023-04-27 11:08:20 +02:00
Ondřej Surý
58663574b9 Use server socket to log TCP accept failures
The accept_connection() could detach from the child socket on a failure,
so we need to keep and use the server socket for logging the accept
failures.
2023-04-27 11:07:57 +02:00
Ondřej Surý
0f25d62a40 Merge branch '4030-fix-UAF-in-isc_httpd' into 'main'
Fix potential UAF when shutting down isc_httpd

Closes #4030

See merge request isc-projects/bind9!7865
2023-04-25 06:18:02 +00:00
Ondřej Surý
6f0d0c49f9 Add CHANGES note for [GL #4031] 2023-04-25 08:17:10 +02:00
Ondřej Surý
27ad3a65f9 Fix potential UAF when shutting down isc_httpd
Use the ISC_LIST_FOREACH_SAFE() macro to safely walk the running https
and shut them down in a manner safe from deletion.
2023-04-25 08:16:46 +02:00
Ondřej Surý
ae997d9e21 Add ISC_LIST_FOREACH(_SAFE) macros
There's a recurring pattern walking the ISC_LISTs that just repeats over
and over.  Add two macros:

 * ISC_LIST_FOREACH(list, elt, link) - walk the static list
 * ISC_LIST_FOREACH_SAFE(list, elt, link, next) - walk the list in
   a manner that's safe against list member deletions
2023-04-25 08:16:46 +02:00
Mark Andrews
f0c3881a82 Merge branch '4027-nsec3-of-removed-empty-non-terminal-remains-in-chain-breaking-validation-tools' into 'main'
Resolve "NSEC3 of removed empty-non-terminal remains in chain, breaking validation tools"

Closes #4027

See merge request isc-projects/bind9!7857
2023-04-25 05:44:08 +00:00