Commit Graph

38109 Commits

Author SHA1 Message Date
Artem Boldariev
d53ecb7720 Fix building BIND on DragonFly BSD (on both older an newer versions)
This commit ensures that BIND and supplementary tools still can be
built on newer versions of DragonFly BSD. It used to be the case, but
somewhere between versions 6.2 and 6.4 the OS developers rearranged
headers and moved some function definitions around.

Before that the fact that it worked was more like a coincidence, this
time we, at least, looked at the related man pages included with the
OS.

No in depth testing has been done on this OS as we do not really
support this platform - so it is more like a goodwill act. We can,
however, use this platform for testing purposes, too. Also, we know
that the OS users do use BIND, as it is included in its ports
directory.

Building with './configure' and './configure --without-jemalloc' have
been fixed and are known to work at the time the commit is made.

(cherry picked from commit 942569a1bb)
2023-09-05 10:33:51 +02:00
Ondřej Surý
445283a67b Merge branch '4263-deprecate-dnssec-must-be-secure-feature-9.18' into 'bind-9.18'
Deprecate 'dnssec-must-be-secure' option

See merge request isc-projects/bind9!8268
2023-09-04 16:54:46 +00:00
Ondřej Surý
12935f2e70 Add CHANGES and release note for [GL #4263]
(cherry picked from commit 898f0ee3cf)
2023-09-04 17:27:38 +02:00
Ondřej Surý
c9d6f0e400 Deprecate 'dnssec-must-be-secure' option
The dnssec-must-be-secure feature was added in the early days of BIND 9
and DNSSEC and it makes sense only as a debugging feature.

Remove the feature to simplify the code.

(cherry picked from commit 9e0b348a2b)
2023-09-04 17:27:14 +02:00
Michał Kępień
8f99ee3e13 Merge branch 'michal/reorganize-vulnerability-docs-9.18' into 'bind-9.18'
[9.18] Move security-related information to SECURITY.md

See merge request isc-projects/bind9!8266
2023-09-04 10:00:36 +00:00
Michał Kępień
695624f314 Move security-related information to SECURITY.md
To follow current best practices, create a short SECURITY.md file in the
root of the repository that contains information about the project's
security policy and guidelines for reporting potential security issues.
Replace the relevant bits of text in other files with references to the
new SECURITY.md file, so that the relevant information only needs to be
maintained in one place.

Replace all occurrences of the generic security-officer@isc.org email
with a dedicated address for reporting BIND 9 security issues,
bind-security@isc.org.

(cherry picked from commit ca9fed9143)
2023-09-04 11:56:46 +02:00
Arаm Sаrgsyаn
07599c2798 Merge branch 'aram/zone.c-got_transfer_quota-bugfix-9.18' into 'bind-9.18'
[9.18] Reset the 'result' before using it again in zone.c:got_transfer_quota()

See merge request isc-projects/bind9!8256
2023-09-04 08:36:57 +00:00
Ondřej Surý
46969dca75 Unobfuscate the code-flow logic in got_transfer_quota()
This refactors the code flow in got_transfer_quota() to not use the
CHECK() macro as it really obfuscates the code flow logic here.

(cherry picked from commit 00cb151f8e)
2023-09-04 08:04:52 +00:00
Aram Sargsyan
07b2d19b92 Reset the 'result' before using it again
The 'result' variable should be reset to ISC_R_NOTFOUND again,
because otherwise a log message could be logged about not being
able to get the TLS configuration based on on the 'result' value
from the previous calls to get the TSIG key.

(cherry picked from commit 6cab7fc627)
2023-09-04 08:04:52 +00:00
Matthijs Mekking
978b4cdd6f Merge branch '4266-document-dnssec-policy-lifetime-v9_18' into 'bind-9.18'
[9.18] Clarify BIND 9 time formats

See merge request isc-projects/bind9!8259
2023-09-01 08:19:40 +00:00
Matthijs Mekking
41085510a6 Add CHANGES entry for #4266
(cherry picked from commit fd3d58d512)
2023-09-01 10:18:50 +02:00
Matthijs Mekking
44cd3788ac Explain lifetime format
Add the text "TTL-style unit suffixes or ISO 8601 duration formats",
just like we do at other places that are duration option types.

Also, in the dnssec-policy "keys" example, use a TTL-style unit too.

(cherry picked from commit b5a757c452)
2023-09-01 10:18:31 +02:00
Matthijs Mekking
a3f94bf002 Add a glossary definition for duration
We don't yet explain the syntax of TTL-style suffixes or ISO 8601
duration formats.

(cherry picked from commit cc122d22b4)
2023-09-01 10:18:31 +02:00
Matthijs Mekking
caf5eeb141 Fix keys reference link in ARM
There's a statement that says: "Here is an example (for illustration
purposes only) of some possible entries in a [keys] list:", and that
links to the wrong "keys" statement (it links to the TSIG keys section).

Remove the reference, as we are already in the right section.

(cherry picked from commit 07c70ea2bd)
2023-09-01 10:18:31 +02:00
Mark Andrews
2dbdcd6f4b Merge branch '4159-openssl-error-queue-not-cleaned-bind-9.18' into 'bind-9.18'
[9.18] Resolve "OpenSSL error queue not cleaned"

See merge request isc-projects/bind9!8263
2023-09-01 04:49:40 +00:00
Mark Andrews
3c2704e994 Add release note for [GL #4159]
(cherry picked from commit 6a1a73759a)
2023-09-01 14:22:19 +10:00
Mark Andrews
4735383680 Add CHANGES note for [GL #4159]
(cherry picked from commit 6c3d4d7aa2)
2023-09-01 14:22:17 +10:00
Mark Andrews
e10dfc2e2d Detect uncleared libcrypto errors in rdata processing
If libcrypto errors are not cleared slow memory leaks occur which
are not detected at shutdown.

(cherry picked from commit 14727bb4b9)
2023-09-01 14:21:49 +10:00
Mark Andrews
91a6885a01 Style fix
(cherry picked from commit b6e1650455)
2023-09-01 14:06:28 +10:00
Mark Andrews
29a93d2889 Check that buf is large enough
(cherry picked from commit 299f519b09)
2023-09-01 14:06:27 +10:00
Mark Andrews
f77ffa7953 Take ownership of pointer before freeing
(cherry picked from commit 9e2288208d)
2023-09-01 14:03:49 +10:00
Mark Andrews
4c27f80476 Add missing "Design by Contract" REQUIREs
(cherry picked from commit b442ae8d3e)
2023-09-01 14:00:14 +10:00
Mark Andrews
788a8a7c4d Free evp_md_ctx and pkey at exit
(cherry picked from commit 936b73cb57)
2023-09-01 13:45:57 +10:00
Mark Andrews
74f9d749bf Clear OpenSSL error stack when exiting
(cherry picked from commit eaedba6621)
2023-09-01 13:45:34 +10:00
Mark Andrews
894b0970e6 Clear OpenSSL errors on TSL error paths
(cherry picked from commit 4f790b6c58)
2023-09-01 13:45:34 +10:00
Mark Andrews
0111782f1e Clear OpenSSL errors on context creation failures
(cherry picked from commit 96db614d69)
2023-09-01 13:45:34 +10:00
Mark Andrews
900efd613f Clear OpenSSL errors on SHA failures
(cherry picked from commit 247422c69f)
2023-09-01 13:45:34 +10:00
Mark Andrews
34a0bb146c Clear OpenSSL errors on engine errors
(cherry picked from commit 2ba62aebce)
2023-09-01 13:43:20 +10:00
Mark Andrews
aca6f3e82d Clear OpenSSL errors on EVP failures
(cherry picked from commit 4ea926934a)
2023-09-01 13:40:32 +10:00
Mark Andrews
b5b13771f2 Clear OpenSSL errors on EVP_PKEY_new failures
(cherry picked from commit 6df53cdb87)
2023-09-01 13:37:02 +10:00
Mark Andrews
4d37996b1a Clear OpenSSL errors on EC_KEY_get0_private_key failures
(cherry picked from commit 86b04368b0)
2023-09-01 13:34:14 +10:00
Mark Andrews
386e88d0e4 Clear OpenSSL errors on EVP_PKEY_get0_EC_KEY failures
(cherry picked from commit abd8c03592)
2023-09-01 13:30:30 +10:00
Mark Andrews
ababcd28c1 Clear OpenSSL errors on EVP_PKEY_get_bn_param failures
(cherry picked from commit d8a9adc821)
2023-09-01 13:24:02 +10:00
Mark Andrews
fb503aa275 Clear OpenSSL errors on EVP_MD_CTX_create failures
(cherry picked from commit 8529be30bb)
2023-09-01 13:13:59 +10:00
Mark Andrews
290896921d Clear OpenSSL errors on ECDSA_SIG_new failures
(cherry picked from commit eafcd41120)
2023-09-01 13:13:06 +10:00
Matthijs Mekking
47a741f3b1 Merge branch '4278-rndc-flush-resets-stale-refresh-time-to-0-v9_18' into 'bind-9.18'
[9.18] Restore serve-stale settings after cache flush

See merge request isc-projects/bind9!8255
2023-08-31 11:52:29 +00:00
Matthijs Mekking
94a61cea3e Add release note and CHANGES for #4278
(cherry picked from commit 9523eb70f6)
2023-08-31 11:15:44 +02:00
Matthijs Mekking
6e078a79d5 After cache flush, restore serve-stale settings
When flushing the cache, we create a new cache database. The serve-stale
settings need to be restored after doing this. We already did this
for max-stale-ttl, but forgot to do this for stale-refresh-time.

(cherry picked from commit 3ae721db6c)
2023-08-31 11:13:08 +02:00
Matthijs Mekking
804f4b8d5d Add serve-stale test settings after flush
Add a test case to ensure that after 'rndc flush', the serve-stale
settings are not reset.

(cherry picked from commit 0f593fd70a)
2023-08-31 11:12:59 +02:00
Mark Andrews
955b7aa6f1 Merge branch '4280-isc-support-22588-bind-now-returning-servfail-for-attempted-deletions-of-non-existent-ptr-srv-bind-9.18' into 'bind-9.18'
[9.18] Resolve "[ISC-support #22588] BIND now returning SERVFAIL for attempted deletions of non-existent PTR/SRV records"

See merge request isc-projects/bind9!8252
2023-08-30 00:34:14 +00:00
Mark Andrews
2502fea7df Add release note for [GL #4280]
(cherry picked from commit 2b4e109c6a)
2023-08-30 10:07:33 +10:00
Mark Andrews
5b12ba7673 Add CHANGES for [GL #4280]
(cherry picked from commit bb3556baa4)
2023-08-30 10:07:31 +10:00
Mark Andrews
58be5d8ed0 rr_exists should not error if the name does not exist
rr_exists errored if the name did not exist in the zone.  This was
not an issue prior to the addition of krb5-subdomain-self-rhs and
ms-subdomain-self-rhs as the only name used was the zone name which
always existed.

(cherry picked from commit b76a15977a)
2023-08-30 10:05:09 +10:00
Mark Andrews
b4694e7551 Check that removal of nonexistent PTR and SRV records work
There was a bug in rr_exists that caused it to fail when the
name didn't exist in the zone.

(cherry picked from commit 2b7192c5be)
2023-08-30 10:05:08 +10:00
Mark Andrews
4efa74279e Merge branch '4277-cid-464851-possible-control-flow-issues-deadcode-in-lib-dns-opensslrsa_link-c' into 'bind-9.18'
Only declare 'ex' if it will be used.

See merge request isc-projects/bind9!8238
2023-08-29 22:32:57 +00:00
Mark Andrews
2282d5325a Only declare 'ex' if we will use it
Fixes
>>>     CID 464851:  Possible Control flow issues  (DEADCODE)
>>>     Execution cannot reach this statement: "BN_free(ex);".

Makes conditionals between declaring and use constistent. BN_free is
not needed as BIGNUM's returned by RSA_get0_key are not to be freed.
2023-08-29 22:05:27 +00:00
Tom Krizek
15b1dac152 Merge branch 'tkrizek-update-sphinx-rtd-theme-9.18' into 'bind-9.18'
[9.18] Update sphinx_rtd_theme

See merge request isc-projects/bind9!8249
2023-08-29 08:23:13 +00:00
Tom Krizek
8bd5468fb7 Update sphinx_rtd_theme
To resolve the version select and search issue on readthedocs.org,
sphinx_rtd_theme>=1.2.1 is required.

Related https://github.com/readthedocs/sphinx_rtd_theme/issues/1452

(cherry picked from commit 92143fa960)
2023-08-29 10:11:08 +02:00
Ondřej Surý
32c57b1e60 Merge branch '4125-statschannel-content-length-overflow-9.18' into 'bind-9.18'
[9.18] Parse statschannel Content-Length: more carefully

See merge request isc-projects/bind9!8215
2023-08-23 13:49:31 +00:00
Ondřej Surý
034a63c1f3 Add release note for [GL #4125]
(cherry picked from commit 58a8de5246)
2023-08-23 15:48:28 +02:00