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

35420 Commits

Author SHA1 Message Date
Ondřej Surý
8c4d5d5623 Use UTC datetime for reproducible builds
For reproducible builds, we use last modification time of the CHANGES
file.  This works pretty well, unless the builds are made in different
timezones.

Use UTC option to date command to make the builds reproducible.
2022-01-24 16:09:48 +01:00
Michał Kępień
28350cd94f Merge branch '3108-bind9-fails-to-start-on-machines-where-glibc-does-not-provide-l1-cache-size' into 'main'
Ignore the invalid L1 cache line size returned by sysconf()

Closes #3108

See merge request isc-projects/bind9!5748
2022-01-24 08:24:12 +00:00
Ondřej Surý
f570e41ab8 Add CHANGES note for [GL #3108] 2022-01-22 17:04:17 +01:00
Ondřej Surý
b28327354d Ignore the invalid L1 cache line size returned by sysconf()
On some systems, the glibc can return 0 instead of cache-line size to
indicate the cache line sizes cannot be determined.  This is comment
from glibc source code:

    /* In general we cannot determine these values.  Therefore we
       return zero which indicates that no information is
       available.  */

As the goal of the check is to determine whether the L1 cache line size
is still 64 and we would use this value in case the sysconf() call is
not available, we can also ignore the invalid values returned by the
sysconf() call.
2022-01-22 16:59:50 +01:00
Petr Špaček
994297423e Merge branch 'pspacek/remove-duplicate-named.conf.rst' into 'main'
Remove duplicate named.conf.rst file

See merge request isc-projects/bind9!5731
2022-01-21 14:32:38 +00:00
Petr Špaček
0a5c2c23bb Remove duplicate named.conf.rst file
As far as I can tell, it is some leftover from the times when Sphinx
docs were introduced (commit 9fb6d11abb).
It seems like it is not referenced from anywhere.
2022-01-21 15:30:38 +01:00
Michał Kępień
370d54e3bb Merge branch 'michal/miscellaneous-text-tweaks-related-to-doh-and-dot' into 'main'
Miscellaneous text tweaks related to DNS-over-HTTPS and DNS-over-TLS

See merge request isc-projects/bind9!5743
2022-01-20 17:38:50 +00:00
Michał Kępień
e225c46376 Suggest --disable-doh when libnghttp2 is not found
Extend the error message displayed when support for DNS over HTTPS is
requested but libnghttp2 is unavailable at build time, in order to help
the user find a way out of such a situation.
2022-01-20 15:40:37 +01:00
Michał Kępień
279b048e34 Avoid use of the DoH acronym in ./configure output
Replace all uses of the DoH acronym in ./configure output with
"DNS-over-HTTPS support" in order to improve error message readability.
2022-01-20 15:40:37 +01:00
Michał Kępień
18db2269bf Fix spelling of "DNS over HTTPS" & "DNS over TLS"
The terms "DNS over HTTPS" and "DNS over TLS" should be hyphenated when
they are used as adjectives and non-hyphenated otherwise.  Ensure all
occurrences of these terms in the source tree follow the above rule.
(CHANGES and release notes are intentionally left intact.)

Tweak a related ARM snippet, fixing a typo in the process.
2022-01-20 15:40:37 +01:00
Michał Kępień
f74e2fb7fb Merge branch 'v9_17_22-release' into 'main'
Merge 9.17.22 release branch

See merge request isc-projects/bind9!5741
2022-01-20 10:26:54 +00:00
Michał Kępień
2559a9d2bd Prepare release notes for BIND 9.17.23 2022-01-20 11:20:03 +01:00
Michał Kępień
e0099f7887 Update BIND version to 9.17.22 2022-01-20 11:19:58 +01:00
Michał Kępień
4289c79fcc Add a CHANGES marker 2022-01-20 11:19:58 +01:00
Michał Kępień
9005d65287 Merge branch 'pspacek/prepare-documentation-for-bind-9.17.22' into 'v9_17_22-release'
Prepare documentation for BIND 9.17.22

See merge request isc-private/bind9!345
2022-01-20 11:19:58 +01:00
Michał Kępień
cb97395a8f Prepare release notes for BIND 9.17.22 2022-01-20 11:19:58 +01:00
Michał Kępień
cc26eb8961 Reorder release notes 2022-01-20 11:19:58 +01:00
Petr Špaček
c2ed72a324 Add release note for GL #2398 and GL #3048
Related: !5620
Fix the isc_hp initialization and memory usage

Related: !5646
Reduce freemax values for dns_message mempools
2022-01-20 11:19:58 +01:00
Petr Špaček
1acbf17cda Add release note for GL #2264
Related: !5627
Use ECDSA P-256 instead of 4096-bit RSA for 'tls ephemeral'
2022-01-20 11:19:58 +01:00
Petr Špaček
5b79ec4033 Tweak and reword release notes 2022-01-20 11:19:58 +01:00
Michał Kępień
d4f01d03d7 Remove release note for GL #3079 2022-01-20 11:19:58 +01:00
Michał Kępień
b82d315327 Merge branch '3080-rndc-catch-canceled' into 'main'
rndc: catch ISC_R_CANCELED in rndc_recvdone()

Closes #3080

See merge request isc-projects/bind9!5716
2022-01-20 08:03:18 +00:00
Evan Hunt
ce83b97099 CHANGES for [GL #3080] 2022-01-19 14:30:17 +01:00
Michał Kępień
d1d721aae1 rndc: prevent crashing after receiving a signal
If isc_app_run() gets interrupted by a signal, the global 'rndc_task'
variable may already be detached from (set to NULL) by the time the
outstanding netmgr callbacks are run.  This triggers an assertion
failure in isc_task_shutdown().  However, explicitly calling
isc_task_shutdown() from rndc code is redundant because it does not use
isc_task_onshutdown() and the task_shutdown() function gets
automatically called anyway when the task manager gets destroyed (after
isc_app_run() returns).  Remove the redundant isc_task_shutdown() calls
to prevent crashes after receiving a signal.
2022-01-19 14:30:17 +01:00
Evan Hunt
289c1d33ee rndc: sync ISC_R_CANCELED handling in callbacks
rndc_recvdone() is not treating the ISC_R_CANCELED result code as a
request to stop data processing, which may cause a crash when trying to
dereference ccmsg->buffer.  Fix by ensuring ISC_R_CANCELED results in an
early exit from rndc_recvdone().

Make sure the logic for handling ISC_R_CANCELED in rndc_recvnonce()
matches the one present in rndc_recvdone() to ensure consistent behavior
between these two sibling functions.
2022-01-19 14:30:17 +01:00
Petr Špaček
710f62bf39 Merge branch 'pspacek/doc-cleanup' into 'main'
Developer docs cleanup

See merge request isc-projects/bind9!4527
2022-01-18 16:20:55 +00:00
Petr Špaček
69d0fe9e72 Replace obsolete references to ATF with Cmocka
Fixup for MR!886.
2022-01-18 17:12:57 +01:00
Petr Špaček
631ee58010 Document new system test output format after build system rewrite
Fixup to MR !985.
2022-01-18 17:12:32 +01:00
Petr Špaček
dac41968a9 Fix command to run all unit tests in doc/dev/dev.md
Fixup for build system rewrite 978c7b2e89,
MR !985.
2022-01-18 17:12:27 +01:00
Artem Boldariev
3c5dbe5742 Merge branch 'artem-doth-test-fix-failure-after-reconfig' into 'main'
doth test: fix failure after reconfig

See merge request isc-projects/bind9!5720
2022-01-18 12:43:42 +00:00
Artem Boldariev
d3e7c0e647 doth test: fix failure after reconfig
Sometimes the serving a query or two might fail in the test due to the
listeners not being reinitialised on time. This commit makes the test
suite to wait for reconfiguration message in the log file to detect
the time when the reconfiguration request completed.
2022-01-18 14:25:43 +02:00
Michał Kępień
89260d6c86 Merge branch '3099-reimplement-the-gnutls-cli-check-in-python' into 'main'
Reimplement the gnutls-cli check in Python

Closes #3099

See merge request isc-projects/bind9!5732
2022-01-18 10:03:09 +00:00
Michał Kępień
29961bd741 Reimplement the gnutls-cli check in Python
gnutls-cli is tricky to script around as it immediately closes the
server connection when its standard input is closed.  This prevents
simple shell-based I/O redirection from being used for capturing the DNS
response sent over a TLS connection and the workarounds for this issue
employ non-standard utilities like "timeout".

Instead of resorting to clever shell hacks, reimplement the relevant
check in Python.  Exit immediately upon receiving a valid DNS response
or when gnutls-cli exits in order to decrease the test's run time.
Employ dnspython to avoid the need for storing DNS queries in binary
files and to improve test readability.  Capture more diagnostic output
to facilitate troubleshooting.  Use a pytest fixture instead of an
Autoconf macro to keep test requirements localized.
2022-01-18 11:00:46 +01:00
Ondřej Surý
17fca0ba96 Merge branch '3093-restore-setting-IPV6_V6ONLY-on-IPv6-sockets' into 'main'
Explicitly enable IPV6_V6ONLY on the netmgr sockets

Closes #3093

See merge request isc-projects/bind9!5714
2022-01-17 22:55:20 +00:00
Ondřej Surý
21c0cfd053 Add CHANGES and release notes for [GL #3093] 2022-01-17 22:16:27 +01:00
Ondřej Surý
7267c39323 Remove +mapped option from dig
The network manager doesn't have support for IPv4-mapped IPv6 addresses,
thus we are removing the +mapped option from dig command.
2022-01-17 22:16:27 +01:00
Ondřej Surý
b5e086257d Explicitly enable IPV6_V6ONLY on the netmgr sockets
Some operating systems (OpenBSD and DragonFly BSD) don't restrict the
IPv6 sockets to sending and receiving IPv6 packets only.  Explicitly
enable the IPV6_V6ONLY socket option on the IPv6 sockets to prevent
failures from using the IPv4-mapped IPv6 address.
2022-01-17 22:16:27 +01:00
Artem Boldariev
55a0d0880a Merge branch '3101-use-ext-regex-to-check-for-http2-support-in-curl' into 'main'
doth test: use extended reg. expression to check for HTTP/2 support

Closes #3101

See merge request isc-projects/bind9!5733
2022-01-17 17:14:45 +00:00
Artem Boldariev
4884ab0340 doth test: use extended reg. expression to check for HTTP/2 support
Using extended regular expressions to check for HTTP/2 support in curl
appears to be a more portable option, which also works on
e.g. OpenBSD.
2022-01-17 16:36:27 +02:00
Ondřej Surý
748b61554e Merge branch 'djt-update-cookie-secret-doc' into 'main'
Update docs to reflect changes to acceptable cookie-secret values

See merge request isc-projects/bind9!5628
2022-01-17 10:50:30 +00:00
Dan Theisen
acf1d502d6 docs: Update ARM to reflect changes to acceptable cookie-secret values 2022-01-17 11:48:25 +01:00
Ondřej Surý
b4ed35c946 Merge branch '3093-missing-libuv-code' into 'main'
add UV_ENOTSUP to isc___nm_uverr2result()

Closes #3093

See merge request isc-projects/bind9!5712
2022-01-17 10:46:35 +00:00
Evan Hunt
be0bc24c7f add UV_ENOTSUP to isc___nm_uverr2result()
This error code is now mapped to ISC_R_FAMILYNOSUPPORT.
2022-01-17 11:45:10 +01:00
Ondřej Surý
ec82226465 Merge branch 'ondrej/fix-missing-backtick-in-host.rst' into 'main'
Add missing backtick to host.rst

See merge request isc-projects/bind9!5724
2022-01-16 07:01:45 +00:00
Ondřej Surý
aaa31962d2 Add missing backtick to host.rst
The missing backtick was causing formatting problems in the host
manpage.
2022-01-16 07:56:17 +01:00
Artem Boldariev
e9942b3ba7 Merge branch 'artem-better-doh-error-logging' into 'main'
DoH: log bad HTTP/2 requests

See merge request isc-projects/bind9!5679
2022-01-14 14:23:43 +00:00
Artem Boldariev
ca9fe3559a DoH: ensure that server_send_error_response() is used properly
The server_send_error_response() function is supposed to be used only
in case of failures and never in case of legitimate requests. Ensure
that ISC_HTTP_ERROR_SUCCESS is never passed there by mistake.
2022-01-14 16:00:42 +02:00
Artem Boldariev
a38b4945c1 DoH: add bad HTTP/2 requests logging
Add some error logging when facing bad requests over HTTP/2. Log the
address and the error description.
2022-01-14 16:00:42 +02:00
Ondřej Surý
5630df8712 Merge branch '3069-increase-dig-timeout-in-resolver-test-v2' into 'main'
Increase the timeout to 15 seconds for the resolver test

Closes #3069

See merge request isc-projects/bind9!5721
2022-01-14 13:51:16 +00:00
Ondřej Surý
d3b975abb6 Increase the timeout to 15 seconds for the resolver test
1. 10 seconds is an unfortunate pick because that reintroduces the
   problem described in commit 5307bf64 (for an earlier check).

   Change the +tries=3 +timeout=10 to +tries=2 +time=15, so that we
   minimize the risk of dig missing any responses sent by the server in
   the first 15 seconds while also increasing our chances of the
   response arriving in time on machines under heavy load and allowing
   it a single retry in case things go awry.

2. The comment about TCP above was misleading: as painfully proven by
   GitLab CI, using TCP is no guarantee of receiving a response in a
   timely manner.  It may help a bit, but it is certainly not a 100%
   reliable solution.

   Change the dig invocation to just use UDP like in the two prior
   tests for consistency (and revise that comment accordingly).
2022-01-14 13:00:56 +01:00