2
0
mirror of https://gitlab.isc.org/isc-projects/bind9 synced 2025-08-31 06:25:31 +00:00
Commit Graph

33013 Commits

Author SHA1 Message Date
Michal Nowak
90298dfc18 Merge branch 'mnowak/drop_headerdep_test.sh.in' into 'main'
Drop bin/tests/headerdep_test.sh.in, revise OPTIONS.md

See merge request isc-projects/bind9!4401
2020-11-27 12:14:29 +00:00
Michal Nowak
9567cefd39 Drop bin/tests/headerdep_test.sh.in
The bin/tests/headerdep_test.sh script has not been updated since it was
first created and it cannot be used as-is with the current BIND source
code.  Better tools (e.g. "include-what-you-use") emerged since the
script was committed back in 2000, so instead of trying to bring it up
to date, remove it from the source repository.
2020-11-27 13:11:41 +01:00
Michal Nowak
e0e644352c Revise OPTIONS.md
- The STD_CDEFINES build-time variable was dropped when the build
    system was migrated to Automake.  CPPFLAGS is the variable which
    should now be used for setting preprocessor macros.

  - Sort the list of preprocessor macros which affect BIND behavior.
    Remove ISC_BUFFER_USEINLINE from the list as it can be controlled
    using its relevant ./configure option (--enable-buffer-useinline).
    Rename NS_RUN_PID_DIR to NAMED_RUN_PID_DIR to match the source code.

  - Tweak Markdown formatting.
2020-11-27 13:11:41 +01:00
Mark Andrews
3d7a0e7af7 Merge branch '2275-tighten-dns-cookie-response-handling' into 'main'
Resolve "Tighten DNS COOKIE response handling"

Closes #2275

See merge request isc-projects/bind9!4391
2020-11-26 21:10:28 +00:00
Mark Andrews
d0dd71380b Add release note for [GL #2275] 2020-11-26 20:48:46 +00:00
Mark Andrews
15e7a4b047 Add CHANGES note for [GL #2275] 2020-11-26 20:48:46 +00:00
Mark Andrews
304df53991 Add comment about cookie sizes 2020-11-26 20:48:46 +00:00
Mark Andrews
bd9155590e Check that missing cookies are handled 2020-11-26 20:48:46 +00:00
Mark Andrews
0e3b1f5a25 Tighten DNS COOKIE response handling
Fallback to TCP when we have already seen a DNS COOKIE response
from the given address and don't have one in this UDP response. This
could be a server that has turned off DNS COOKIE support, a
misconfigured anycast server with partial DNS COOKIE support, or a
spoofed response. Falling back to TCP is the correct behaviour in
all 3 cases.
2020-11-26 20:48:46 +00:00
Michal Nowak
8fed3b3e17 Merge branch '2224-fixup-core-back-traces' into 'main'
Resolve "Fixup core back traces."

Closes #2224

See merge request isc-projects/bind9!4279
2020-11-26 17:03:43 +00:00
Michal Nowak
6428fc26af Write traceback file to the same directory as core file
The traceback files could overwrite each other on systems which do not
use different core dump file names for different processes.  Prevent
that by writing the traceback file to the same directory as the core
dump file.

These changes still do not prevent the operating system from overwriting
a core dump file if the same binary crashes multiple times in the same
directory and core dump files are named identically for different
processes.
2020-11-26 18:01:34 +01:00
Mark Andrews
0f0a006c7e Unify whitespace in bin/tests/system/run.sh.in
Replace tabs with spaces to make whitespace consistent across the entire
bin/tests/system/run.sh.in script.
2020-11-26 18:01:33 +01:00
Diego dos Santos Fronza
9d56be5ab2 Merge branch '2281-cid-313104-error-handling-issues-in-lib-ns-query-c' into 'main'
Resolve "CID 313104: Error handling issues in lib/ns/query.c"

Closes #2281

See merge request isc-projects/bind9!4416
2020-11-26 14:57:02 +00:00
Diego Fronza
95add01643 Silence coverity warnings in query.c
Return value of dns_db_getservestalerefresh() and
dns_db_getservestalettl() functions were previously unhandled.

This commit purposefully ignore those return values since there is
no side effect if those results are != ISC_R_SUCCESS, it also supress
Coverity warnings.
2020-11-26 14:55:14 +00:00
Matthijs Mekking
5434529a77 Merge branch '1620-dnssec-policy-nsec3-saltlen-followup' into 'main'
Add one missing check to nsec3param unit test

See merge request isc-projects/bind9!4432
2020-11-26 14:40:34 +00:00
Matthijs Mekking
dff01583db Add one missing check to nsec3param unit test
Caught this missing check with clang-build while backporting #1620
to the v9_16 branch.
2020-11-26 12:40:22 +00:00
Michał Kępień
dcb8394c0c Merge branch 'michal/use-proper-cmocka-macros-for-pointer-checks' into 'main'
Use proper cmocka macros for pointer checks

See merge request isc-projects/bind9!4415
2020-11-26 12:12:02 +00:00
Michał Kępień
f440600126 Use proper cmocka macros for pointer checks
Make sure pointer checks in unit tests use cmocka assertion macros
dedicated for use with pointers instead of those dedicated for use with
integers or booleans.
2020-11-26 13:10:40 +01:00
Michał Kępień
1c9273a40b Merge branch '2310-update-release-checklist' into 'main'
Update release checklist

See merge request isc-projects/bind9!4425
2020-11-26 12:08:09 +00:00
Michał Kępień
a83f838a6f Update release checklist
Add an item to the release checklist to make sure the man pages
generated during release preparation are formatted correctly.
2020-11-26 13:07:19 +01:00
Michał Kępień
07c0db2661 Merge branch 'v9_17_7-release' into 'main'
Merge 9.17.7 release branch

See merge request isc-projects/bind9!4426
2020-11-26 11:19:45 +00:00
Michał Kępień
2011a86881 Set up release notes for BIND 9.17.8 2020-11-26 12:16:49 +01:00
Michał Kępień
2bb071ec06 Bump BIND_BASELINE_VERSION for ABI checks 2020-11-26 12:16:49 +01:00
Michał Kępień
09aa4a564d Update BIND version to 9.17.7 2020-11-26 12:12:17 +01:00
Michał Kępień
7475ba842d Add a CHANGES marker 2020-11-26 12:12:17 +01:00
Michał Kępień
2bb0a5dcdb Update library API versions 2020-11-26 12:12:17 +01:00
Michał Kępień
1328a7cbda Merge branch 'michal/prepare-release-notes-for-bind-9.17.7' into 'v9_17_7-release'
Prepare release notes for BIND 9.17.7

See merge request isc-private/bind9!220
2020-11-26 12:12:17 +01:00
Michał Kępień
3a447d02b4 Prepare release notes for BIND 9.17.7 2020-11-26 12:12:17 +01:00
Michał Kępień
42cf594b37 Add release note for GL #2244 2020-11-26 12:12:17 +01:00
Michał Kępień
563f8a78e9 Add release note for GL #2236 2020-11-26 12:12:17 +01:00
Michał Kępień
572bc05aca Add release note for GL #1736 2020-11-26 12:12:17 +01:00
Michał Kępień
a4dea3c70c Reorder release notes 2020-11-26 12:12:17 +01:00
Michał Kępień
59221c4b3b Tweak and reword release notes 2020-11-26 12:12:17 +01:00
Michał Kępień
429cac9d1a Tweak and reword recent CHANGES entries 2020-11-26 12:12:17 +01:00
Michał Kępień
3f7ddefdd1 Remove any mention of "make depend" from README.md 2020-11-26 12:12:17 +01:00
Matthijs Mekking
84bf7ce4a6 Merge branch '1620-dnssec-policy-nsec3-saltlen' into 'main'
Resolve "dnssec-policy NSEC3 support"

Closes #1620

See merge request isc-projects/bind9!4299
2020-11-26 10:12:26 +00:00
Matthijs Mekking
64db30942d Add NSEC3PARAM unit test, refactor zone.c
Add unit test to ensure the right NSEC3PARAM event is scheduled in
'dns_zone_setnsec3param()'.  To avoid scheduling and managing actual
tasks, split up the 'dns_zone_setnsec3param()' function in two parts:

1. 'dns__zone_lookup_nsec3param()' that will check if the requested
   NSEC3 parameters already exist, and if a new salt needs to be
   generated.

2. The actual scheduling of the new NSEC3PARAM event (if needed).
2020-11-26 10:43:59 +01:00
Matthijs Mekking
6b5d7357df Detect NSEC3 salt collisions
When generating a new salt, compare it with the previous NSEC3
paremeters to ensure the new parameters are different from the
previous ones.

This moves the salt generation call from 'bin/named/*.s' to
'lib/dns/zone.c'. When setting new NSEC3 parameters, you can set a new
function parameter 'resalt' to enforce a new salt to be generated. A
new salt will also be generated if 'salt' is set to NULL.

Logging salt with zone context can now be done with 'dnssec_log',
removing the need for 'dns_nsec3_log_salt'.
2020-11-26 10:43:59 +01:00
Matthijs Mekking
3b4c764b43 Add zone context to "generated salt" logs 2020-11-26 10:43:59 +01:00
Matthijs Mekking
7878f300ff Move logging of salt in separate function
There may be a desire to log the salt without losing the context
of log module, level, and category.
2020-11-26 10:43:59 +01:00
Matthijs Mekking
6f97bb6b1f Change nsec3param salt config to saltlen
Upon request from Mark, change the configuration of salt to salt
length.

Introduce a new function 'dns_zone_checknsec3aram' that can be used
upon reconfiguration to check if the existing NSEC3 parameters are
in sync with the configuration. If a salt is used that matches the
configured salt length, don't change the NSEC3 parameters.
2020-11-26 10:43:59 +01:00
Matthijs Mekking
00c5dabea3 Add check for NSEC3 and key algorithms
NSEC3 is not backwards compatible with key algorithms that existed
before the RFC 5155 specification was published.
2020-11-26 10:43:59 +01:00
Matthijs Mekking
f10790b02d Disable one nsec3 test due to GL #2216
This known bug makes the test fail. There is no trivial fix so disable
test case for now.
2020-11-26 10:43:59 +01:00
Matthijs Mekking
9adad77ac3 Add changes and notes for kasp NSEC3 support
This feature is news worthy.
2020-11-26 10:43:58 +01:00
Matthijs Mekking
a5b45bdd03 Add some NSEC3 optout tests
Make sure that just changing the optout value recreates the chain.
2020-11-26 10:43:27 +01:00
Matthijs Mekking
7039c5f805 Check nsec3param configuration values
Check 'nsec3param' configuration for the number of iterations.  The
maximum number of iterations that are allowed are based on the key
size (see https://tools.ietf.org/html/rfc5155#section-10.3).

Check 'nsec3param' configuration for correct salt. If the string is
not "-" or hex-based, this is a bad salt.
2020-11-26 10:43:27 +01:00
Matthijs Mekking
eae9a6d297 Don't use 'rndc signing' with kasp
The 'rndc signing' command allows you to manipulate the private
records that are used to store signing state. Don't use these with
'dnssec-policy' as such manipulations may violate the policy (if you
want to change the NSEC3 parameters, change the policy and reconfig).
2020-11-26 10:43:27 +01:00
Matthijs Mekking
ba8128ea00 Fix a reconfig bug wrt inline-signing
When doing 'rndc reconfig', named may complain about a zone not being
reusable because it has a raw version of the zone, and the new
configuration has not set 'inline-signing'. However, 'inline-signing'
may be implicitly true if a 'dnssec-policy' is used for the zone, and
the zone is not dynamic.

Improve the check in 'named_zone_reusable'.  Create a new function for
checking 'inline-signing' configuration that matches existing code in
'bin/named/server.c'.
2020-11-26 10:43:27 +01:00
Matthijs Mekking
114af58ee2 Support for NSEC3 in dnssec-policy
Implement support for NSEC3 in dnssec-policy.  Store the configuration
in kasp objects. When configuring a zone, call 'dns_zone_setnsec3param'
to queue an nsec3param event. This will ensure that any previous
chains will be removed and a chain according to the dnssec-policy is
created.

Add tests for dnssec-policy zones that uses the new 'nsec3param'
option, as well as changing to new values, changing to NSEC, and
changing from NSEC.
2020-11-26 10:43:27 +01:00
Matthijs Mekking
f7ca96c805 Add kasp nsec3param configuration
Add configuration and documentation on how to enable NSEC3 when
using dnssec-policy for signing your zones.
2020-11-26 10:43:27 +01:00