Commit Graph
37711 Commits
Author SHA1 Message Date
Michal Nowak 7ade835795 Merge branch 'mnowak/fedora-38-9.18' into 'bind-9.18'
[9.18] Add Fedora 38

See merge request isc-projects/bind9!7951
2023-05-19 12:03:42 +00:00
Michal Nowak 465a797014 Add Fedora 38
(cherry picked from commit 2e0550970b)
2023-05-19 13:56:34 +02:00
Michal Nowak 3007bb18e2 Merge branch 'mnowak/get_core_dumps-fix-misplaced-tsan-line-9.18' into 'bind-9.18'
[9.18] TSAN summarising line was misplaced in get_core_dumps.sh

See merge request isc-projects/bind9!7949
2023-05-19 08:11:32 +00:00
Michal Nowak 1fa70a559c TSAN summarising line was misplaced in get_core_dumps.sh
The line summarising TSAN reports was misplaced in the ASAN territory
and thus never used.

I also made core dumps, assertion failures, and TSAN reports detection
independent of each other.

(cherry picked from commit 0c4c7ddec4)
2023-05-19 09:20:51 +02:00
Michał Kępień 66a8a0de23 Merge branch 'michal/cmocka-future-proofing-9.18' into 'bind-9.18'
[9.18] cmocka future-proofing

See merge request isc-projects/bind9!7947
2023-05-18 13:51:35 +00:00
Michał Kępień b2b3899af7 Fix cmocka-related compiler warnings in ht_test
tests/isc/ht_test.c triggers the following compiler warnings when built
against development versions of cmocka:

    In file included from ht_test.c:24:
    ht_test.c: In function ‘test_ht_full’:
    ht_test.c:69:45: warning: passing argument 2 of ‘_assert_ptr_equal’ makes pointer from integer without a cast [-Wint-conversion]
       69 |                 assert_ptr_equal((void *)i, (uintptr_t)f);
    /usr/include/cmocka.h:1513:56: note: in definition of macro ‘assert_ptr_equal’
     1513 | #define assert_ptr_equal(a, b) _assert_ptr_equal((a), (b), __FILE__, __LINE__)
          |                                                        ^
    /usr/include/cmocka.h:2907:36: note: expected ‘const void *’ but argument is of type ‘long unsigned int’
     2907 |                        const void *b,
          |                        ~~~~~~~~~~~~^
    ht_test.c:164:45: warning: passing argument 2 of ‘_assert_ptr_equal’ makes pointer from integer without a cast [-Wint-conversion]
      164 |                 assert_ptr_equal((void *)i, (uintptr_t)f);
    /usr/include/cmocka.h:1513:56: note: in definition of macro ‘assert_ptr_equal’
     1513 | #define assert_ptr_equal(a, b) _assert_ptr_equal((a), (b), __FILE__, __LINE__)
          |                                                        ^
    /usr/include/cmocka.h:2907:36: note: expected ‘const void *’ but argument is of type ‘long unsigned int’
     2907 |                        const void *b,
          |                        ~~~~~~~~~~~~^

These are caused by a change to the definitions of pointer assert
functions in cmocka's development branch [1].  Fix by casting the
affected variables to (void *) instead of (uintptr_t).

[1] https://git.cryptomilk.org/projects/cmocka.git/commit/?id=09621179af67535788a67957a910d9f17c975b45

(cherry picked from commit 8d36e68c7a)
2023-05-18 15:36:03 +02:00
Michał Kępień 78afc0bf04 Include <inttypes.h> whenever including <cmocka.h>
Development versions of cmocka require the intmax_t and uintmax_t types
to be defined by the time the test code includes the <cmocka.h> header.
These types are defined in the <stdint.h> header, which is included by
the <inttypes.h> header, which in turn is already explicitly included by
some of the programs in the tests/ directory.  Ensure all programs in
that directory that include the <cmocka.h> header also include the
<inttypes.h> header to future-proof the code while keeping the change
set minimal and the resulting code consistent.  Also prevent explicitly
including the <stdint.h> header in those programs as it is included by
the <inttypes.h> header.

(cherry picked from commit c2dcd055fe)
2023-05-18 15:36:03 +02:00
Michał Kępień c65a405827 Merge tag 'v9.18.15' into bind-9.18
BIND 9.18.15
2023-05-18 14:10:33 +02:00
Tony Finch 09c5244611 Merge branch 'fanf-noreturn-lossage-bind-9.18' into 'bind-9.18'
[9.18] Avoid lossage from <stdnoreturn.h>

See merge request isc-projects/bind9!7940
2023-05-17 15:23:18 +00:00
Tony Finch 3c1098715e Avoid lossage from <stdnoreturn.h>
A few of the source files in `tests/ns` included `<isc/util.h>`
before `<cmocka.h>`. This could cause compile failures because the
`CMOCKA_NORETURN` macro is defined as `__attribute__((noreturn))`
and `<stdnoreturn.h>` defines `noreturn` as `_Noreturn` which does
not work as a gcc-style attribute.

(cherry picked from commit 623f2fdb18)
2023-05-17 14:21:06 +01:00
Artem Boldariev 1e412d1bf5 Merge branch 'artem-9_18-fix_isc__nm_sockstop' into 'bind-9.18'
Fix isc__nmsocket_stop(): make sockstop netievent as a high priority event (similarly to other transports)

See merge request isc-projects/bind9!7935
2023-05-17 13:18:44 +00:00
Artem Boldariev d7a60427b9 Update release notes [GL #4071]
Mention that BIND getting stuck during reconfiguration when
DoH-enabled listen statement is removed on re-configuration has been
fixed.
2023-05-17 14:25:31 +03:00
Artem Boldariev 8eeafbc6a7 Update CHANGES [GL #4071]
Mention that BIND getting stuck during reconfiguration when
DoH-enabled listen statement is removed on re-configuration has been
fixed.
2023-05-17 14:25:14 +03:00
Artem Boldariev 9ab6c3a5b1 Make sockstop netievent a high-priority one
Seemingly by omission, sockstop netievent used by multi-layer sockets
was not a high priority event, like it should be (similarly to other
socket types).

In particular, that could make BIND stuck on reconfiguration after a
DoH-listener is removed from the configuration.

This commit fixes that.
2023-05-17 13:06:41 +03:00
Artem Boldariev 18d662f4d2 Pass the right worker into isc__nm_async_sockstop()
The intention behind 'isc__nmsocket_stop()' was that the function
sends notifications on every worker thread, making them synchronise on
the barrier, then the initiating thread waits on it, too. This way we
ensure than no other operation will start when we shutting down the
listener.

However, it seems that due to mistake we have been passing the wrong
worker pointer into isc__nm_async_sockstop() from within the context
of an worker thread which has initiated shutting down. While
effectively we have not been using the pointer in this case, it could
cause maintenance issues later. This commit fixes that.
2023-05-17 12:56:25 +03:00
Mark Andrews 50c30d835c Merge branch '4066-resolv-conf-parsing-eats-lines-if-more-than-3-nameservers-set-bind-9.18' into 'bind-9.18'
[9.18] Resolve "resolv.conf parsing eats lines if more than 3 nameservers set"

See merge request isc-projects/bind9!7933
2023-05-16 04:05:58 +00:00
Mark Andrews 4e9d998180 Add CHANGES for [GL #4066]
(cherry picked from commit 36dab033dc)
2023-05-16 13:30:01 +10:00
Mark Andrews d7c1094d10 Properly process extra nameserver lines in resolv.conf
The whole line needs to be read rather than just the token "nameserver"
otherwise the next line in resolv.conf is not properly processed.

(cherry picked from commit 864cd08052)
2023-05-16 13:29:33 +10:00
Michal Nowak 4620384b5b Merge branch 'mnowak/openbsd-7.3-9.18' into 'bind-9.18'
[9.18] Add OpenBSD 7.3

See merge request isc-projects/bind9!7929
2023-05-15 18:37:29 +00:00
Michal Nowak 1cf4231d29 Add OpenBSD 7.3
(cherry picked from commit ff52cd9604)
2023-05-15 19:47:23 +02:00
Michal Nowak 0f047910d9 Merge branch 'mnowak/freebsd-13.2-9.18' into 'bind-9.18'
[9.18] Add FreeBSD 13.2

See merge request isc-projects/bind9!7927
2023-05-15 16:53:10 +00:00
Michal Nowak 3af5c8badb Add FreeBSD 13.2
(cherry picked from commit 81ad645d7d)
2023-05-15 18:33:02 +02:00
Arаm Sаrgsyаn 52844fa8c7 Merge branch '4054-zone_resigninc-bugfix-9.18' into 'bind-9.18'
[9.18] zone_resigninc(): check whether zone->db is a valid pointer before attaching

See merge request isc-projects/bind9!7923
2023-05-15 14:00:21 +00:00
Aram Sargsyan cc197e82fe Add a CHANGES note for [GL #4054]
(cherry picked from commit 00ed5f84a9)
2023-05-15 12:02:27 +00:00
Aram Sargsyan 7713d2cb6d Check whether zone->db is a valid pointer before attaching
The zone_resigninc() function does not check the validity of
'zone->db', which can crash named if the zone was unloaded earlier,
for example with "rndc delete".

Check that 'zone->db' is not 'NULL' before attaching to it, like
it is done in zone_sign() and zone_nsec3chain() functions, which
can similarly be called by zone maintenance.

(cherry picked from commit fae0930eb8)
2023-05-15 12:01:23 +00:00
Michal Nowak 9285538683 Merge branch 'mnowak/coverity-scan-2022.12-9.18' into 'bind-9.18'
[9.18] Use the latest Coverity Scan

See merge request isc-projects/bind9!7918
2023-05-12 08:54:25 +00:00
Michal Nowak 7858de96f6 Use the latest Coverity Scan
(cherry picked from commit 68dd458764)
2023-05-12 10:14:29 +02:00
Michal Nowak 582e155c5e Merge branch 'mnowak/pytest_rewrite_ttl-9.18' into 'bind-9.18'
[9.18] Rewrite the ttl system test to pytest

See merge request isc-projects/bind9!7915
2023-05-11 14:40:54 +00:00
Michal Nowak 858954da9a Rewrite the ttl system test to pytest
(cherry picked from commit 0c05c3d97b)
2023-05-11 16:10:23 +02:00
Michal Nowak 73d25a85d0 Merge branch 'mnowak/clang-16-9.18' into 'bind-9.18'
[9.18] Update clang to version 16

See merge request isc-projects/bind9!7912
2023-05-11 13:10:45 +00:00
Michal Nowak 9699a377f5 Update clang to version 16
(cherry picked from commit 30aa258107)
2023-05-11 14:20:59 +02:00
Michal Nowak 534c5697b2 Merge branch 'mnowak/pytest_rewrite_hooks-9.18' into 'bind-9.18'
[9.18] Rewrite the hooks system test to pytest

See merge request isc-projects/bind9!7911
2023-05-11 10:52:55 +00:00
Michal Nowak da74157440 Rewrite the hooks system test to pytest
Also, enable the test under TSAN.

(cherry picked from commit 5a84c7a09b)
2023-05-11 12:27:42 +02:00
Arаm Sаrgsyаn 4cae19f533 Merge branch '4039-dighost-fix-double-shutdown-call-9.18' into 'bind-9.18'
[9.18] dighost.c: don't call check_if_done() twice successively

See merge request isc-projects/bind9!7904
2023-05-10 12:49:57 +00:00
Aram Sargsyan 4b1e0913a5 Add a CHANGES note for [GL #4039]
(cherry picked from commit d71299121e)
2023-05-10 11:41:35 +00:00
Aram Sargsyan 906525642d dighost.c: don't call check_if_done() twice successively
The check_if_done() function can pass control back out to
dighost_shutdown() (which is part of dig.c, host.c, or nslookup.c),
and calling that twice can cause unexpected problems, if it is not
designed to be idempotent.

Since cancel_lookup() calls check_if_done() implicitly, don't call
check_if_done() again when 'next' is NULL.

(cherry picked from commit e4604b71d2)
2023-05-10 11:41:35 +00:00
Tom Krizek ef0f7a7f13 Merge branch 'tkrizek/shutdown-test-exc-handling-9.18' into 'bind-9.18'
[9.18] Ensure named always terminates in the shutdown test

See merge request isc-projects/bind9!7902
2023-05-10 11:40:02 +00:00
Tom Krizek 8820c459c6 Replace dnspython resolver.query with resolver.resolve
The resolver.query() has been deprecated in favor of resolver.resolve();
used that.

This is an omission from 3b1756d450

(cherry picked from commit dee49b7a1f)
2023-05-10 12:55:30 +02:00
Tom Krizek 2dfe5367b7 Ensure named always terminates in the shutdown test
Previously, if an exception would happen inside the `with` block, the
error handler would wait indefinitely for the process to end. That would
never happen, since the termination signal was never sent to named and
the test would get stuck.

Using the try-finally block ensures that the named process is always
killed and any exception or errors will be handled gracefully.

(cherry picked from commit 836e6ed284)
2023-05-10 12:55:30 +02:00
Tom Krizek 947212a93f Refactor shutdown test into more helper functions
Improve code readability by splitting the test into more functions. Some
could be re-used later on for more general-purpose subprocess handling
or named checks.

(cherry picked from commit 9d64f1c1ed)
2023-05-10 12:55:27 +02:00
Michał Kępień 47fc1bf6bb Merge branch 'michal/set-up-version-and-release-notes-for-bind-9.18.16' into 'bind-9.18'
Set up version and release notes for BIND 9.18.16

See merge request isc-projects/bind9!7900
2023-05-10 08:47:56 +00:00
Michał Kępień 8fee182171 Set up release notes for BIND 9.18.16 2023-05-10 10:41:42 +02:00
Michał Kępień 9c09313bc9 Update BIND version to 9.18.16-dev 2023-05-10 10:41:42 +02:00
Michał Kępień f53a0765c3 Update BIND version for release v9.18.15 2023-05-09 12:47:13 +02:00
Michał Kępień 0a8d9a7413 Add a CHANGES marker 2023-05-09 12:47:13 +02:00
Michał Kępień 5dc1788099 Merge branch 'michal/prepare-documentation-for-bind-9.18.15' into 'v9.18.15-release'
Prepare documentation for BIND 9.18.15

See merge request isc-private/bind9!516
2023-05-09 10:45:33 +00:00
Michał Kępień af1bcc652f Add release note for GL #4002 2023-05-09 12:36:44 +02:00
Michał Kępień 2cecc9652c Add release note for GL #4027 2023-05-09 12:36:44 +02:00
Michał Kępień c5441e8ff4 Reorder release notes 2023-05-09 12:36:44 +02:00
Michał Kępień a656a5453d Tweak and reword release notes 2023-05-09 12:36:44 +02:00