Commit graph

32477 commits

Author SHA1 Message Date
Ondřej Surý
fcfb3e77bb Remove the requirement for the release notes to have copyright
The release notes doesn't have to have copyright header, it doesn't add
any value there as the release notes are useless outside the project.

(cherry picked from commit cb30d9892d)
2020-12-09 10:50:15 +01:00
Ondřej Surý
2e879edb8c Merge branch 'ondrej/clang-format-11-v9_16' into 'v9_16'
Bump the clang version to 11 (v9.16)

See merge request isc-projects/bind9!4480
2020-12-08 19:14:15 +00:00
Ondřej Surý
908f167a5d Bump the clang version to 11 (stable)
(cherry picked from commit c1eb385fdf)
2020-12-08 19:34:12 +01:00
Ondřej Surý
a35a666a7c Reformat sources using clang-format-11
(cherry picked from commit 7ba18870dc)
2020-12-08 19:34:05 +01:00
Ondřej Surý
504969cb63 Explicitly configure new clang-format-11 options
(cherry picked from commit 6c28834354)
2020-12-08 19:30:55 +01:00
Ondřej Surý
dc548b2e83 Merge branch '2250-dns-flag-day-2020-revert-nocookie-udp-size-v9_16' into 'v9_16'
Resolve "DNS Flag Day 2020 - EDNS buffer size configuring does not work anymore"

See merge request isc-projects/bind9!4456
2020-12-02 15:33:06 +00:00
Ondřej Surý
9d35c9b96d Add CHANGES and release not for GL #2250
(cherry picked from commit c7d81f12f8)
2020-12-02 12:02:10 +01:00
Ondřej Surý
5d34daaf78 Change the default value for nocookie-udp-size back to 4096
The DNS Flag Day 2020 reduced all the EDNS buffer sizes to 1232.  In
this commit, we revert the default value for nocookie-udp-size back to
4096 because the option is too obscure and most people don't realize
that they also need to change this configuration option in addition to
max-udp-size.

(cherry picked from commit 79c196fc77)
2020-12-02 12:01:50 +01:00
Mark Andrews
0d3ba105bb Merge branch '2305-adjust-recursion-limits-v9_16' into 'v9_16'
Adjust default value of "max-recursion-queries"

See merge request isc-projects/bind9!4447
2020-12-01 14:13:40 +00:00
Mark Andrews
5c10b5a4e8 Adjust default value of "max-recursion-queries"
Since the queries sent towards root and TLD servers are now included in
the count (as a result of the fix for CVE-2020-8616),
"max-recursion-queries" has a higher chance of being exceeded by
non-attack queries.  Increase its default value from 75 to 100.

(cherry picked from commit ab0bf49203)
2020-12-02 00:53:49 +11:00
Mark Andrews
c4178b7d8d Merge branch '2315-bind-9-11-22-9-11-25-fails-to-build-for-aep-hsm-native-pkcs11-v9_16' into 'v9_16'
Resolve "BIND 9.11.22 - 9.11.25 fails to build for AEP HSM native pkcs11"

See merge request isc-projects/bind9!4445
2020-12-01 13:50:49 +00:00
Mark Andrews
45719ff249 Add release note for [GL #2315]
(cherry picked from commit 356243aaec)
2020-12-01 23:29:43 +11:00
Mark Andrews
a07754cf69 Add CHANGES
(cherry picked from commit 11a3545e32)
2020-12-01 23:19:20 +11:00
Mark Andrews
4926888306 Fix misplaced declaration
(cherry picked from commit 49b9219bb3)
2020-12-01 23:19:20 +11:00
Michal Nowak
d765d024ea Merge branch '2274-drop-centos-6-support-after-november-30-2020' into 'v9_16'
Remove CentOS 6 from GitLab CI

See merge request isc-projects/bind9!4392
2020-11-30 13:29:02 +00:00
Michal Nowak
b908cc9c79
Remove CentOS 6 from GitLab CI
CentOS 6 reaches EOL on November 30, 2020 and will not be officially
supported by the CentOS project.
2020-11-27 13:29:38 +01:00
Mark Andrews
fe07671c9b Merge branch '2275-tighten-dns-cookie-response-handling-v9_16' into 'v9_16'
Resolve "Tighten DNS COOKIE response handling"

See merge request isc-projects/bind9!4438
2020-11-26 22:25:42 +00:00
Mark Andrews
e98edb871d Add release note for [GL #2275]
(cherry picked from commit d0dd71380b)
2020-11-27 08:44:00 +11:00
Mark Andrews
a9c791dfef Add CHANGES note for [GL #2275]
(cherry picked from commit 15e7a4b047)
2020-11-27 08:44:00 +11:00
Mark Andrews
7e85b2cd22 Add comment about cookie sizes
(cherry picked from commit 304df53991)
2020-11-27 08:44:00 +11:00
Mark Andrews
2898f530cd Check that missing cookies are handled
(cherry picked from commit bd9155590e)
2020-11-27 08:44:00 +11:00
Mark Andrews
df5f076a02 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.

(cherry picked from commit 0e3b1f5a25)
2020-11-27 08:15:11 +11:00
Michal Nowak
0e5276f9d2 Merge branch '2224-fixup-core-back-traces-v9_16' into 'v9_16'
[v9_16] Resolve "Fixup core back traces."

See merge request isc-projects/bind9!4435
2020-11-26 17:40:11 +00:00
Michal Nowak
f48b221ffa
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.

(cherry picked from commit 6428fc26af)
2020-11-26 18:29:41 +01:00
Mark Andrews
a50ce1bd43
Unify whitespace in bin/tests/system/run.sh
Replace tabs with spaces to make whitespace consistent across the entire
bin/tests/system/run.sh script.

(cherry picked from commit 0f0a006c7e)
2020-11-26 18:29:33 +01:00
Diego dos Santos Fronza
4c8330cb91 Merge branch '2281-cid-313104-error-handling-issues-in-lib-ns-query-c-v9_16' into 'v9_16'
Resolve "CID 313104: Error handling issues in lib/ns/query.c"

See merge request isc-projects/bind9!4418
2020-11-26 14:57:49 +00:00
Diego Fronza
5c28451949 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:56:22 +00:00
Matthijs Mekking
6e945ae520 Merge branch '1620-dnssec-policy-nsec3-saltlen-v9_16' into 'v9_16'
Resolve "dnssec-policy NSEC3 support" (9.16)

See merge request isc-projects/bind9!4423
2020-11-26 14:15:41 +00:00
Matthijs Mekking
2f0b924ce6 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).

(cherry picked from commit 64db30942d)
2020-11-26 14:15:05 +00:00
Matthijs Mekking
6db879160f 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'.

(cherry picked from commit 6b5d7357df)
2020-11-26 14:15:05 +00:00
Matthijs Mekking
734865e110 Add zone context to "generated salt" logs
(cherry picked from commit 3b4c764b43)
2020-11-26 14:15:05 +00:00
Matthijs Mekking
93f9d3b812 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.

(cherry picked from commit 7878f300ff)
2020-11-26 14:15:04 +00:00
Matthijs Mekking
52d3bf5f31 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.

(cherry picked from commit 6f97bb6b1f)
2020-11-26 14:15:04 +00:00
Matthijs Mekking
d35dab3db8 Add check for NSEC3 and key algorithms
NSEC3 is not backwards compatible with key algorithms that existed
before the RFC 5155 specification was published.

(cherry picked from commit 00c5dabea3)
2020-11-26 14:15:03 +00:00
Matthijs Mekking
00d7cc5144 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.

(cherry picked from commit f10790b02d)
2020-11-26 14:15:03 +00:00
Matthijs Mekking
c993bc19a0 Add changes and notes for kasp NSEC3 support
This feature is news worthy.

(cherry picked from commit 9adad77ac3)
2020-11-26 14:15:03 +00:00
Matthijs Mekking
cf79e6ccc1 Add some NSEC3 optout tests
Make sure that just changing the optout value recreates the chain.

(cherry picked from commit a5b45bdd03)
2020-11-26 14:15:03 +00:00
Matthijs Mekking
2a1793a2be 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.

(cherry picked from commit 7039c5f805)
2020-11-26 14:15:03 +00:00
Matthijs Mekking
b6cf88333a 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).

(cherry picked from commit eae9a6d297)
2020-11-26 14:15:02 +00:00
Matthijs Mekking
d13786d583 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'.

(cherry picked from commit ba8128ea00)
2020-11-26 14:15:02 +00:00
Matthijs Mekking
008e84e965 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.

(cherry picked from commit 114af58ee2)
2020-11-26 14:15:02 +00:00
Matthijs Mekking
5dfd3b2d7b Add kasp nsec3param configuration
Add configuration and documentation on how to enable NSEC3 when
using dnssec-policy for signing your zones.

(cherry picked from commit f7ca96c805)
2020-11-26 14:15:02 +00:00
Matthijs Mekking
9b9ac92fd0 Move generate_salt function to lib/dns/nsec3
We will be using this function also on reconfig, so it should have
a wider availability than just bin/named/server.

(cherry picked from commit 84a4273074)
2020-11-26 14:14:56 +00:00
Michal Nowak
e5dc276c65 Merge branch '1770-review-how-we-use-sys-un-h' into 'v9_16'
Fix typo in ISC_PLAFORM_HAVESYSUNH

See merge request isc-projects/bind9!4417
2020-11-26 14:04:55 +00:00
Michal Nowak
8885f4a6f7
Fix typo in ISC_PLAFORM_HAVESYSUNH 2020-11-26 14:17:17 +01:00
Michał Kępień
ae73b62ea9 Merge branch 'michal/use-proper-cmocka-macros-for-pointer-checks-v9_16' into 'v9_16'
[v9_16] Use proper cmocka macros for pointer checks

See merge request isc-projects/bind9!4429
2020-11-26 12:19:39 +00:00
Michał Kępień
a6f2e36ee6 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.

(cherry picked from commit f440600126)
2020-11-26 13:13:21 +01:00
Michał Kępień
614d860c99 Merge branch 'v9_16_9-release' into 'v9_16'
Merge 9.16.9 release branch

See merge request isc-projects/bind9!4427
2020-11-26 11:31:46 +00:00
Michał Kępień
ce18f66336 Set up release notes for BIND 9.16.10 2020-11-26 12:30:25 +01:00
Michał Kępień
d29339750e Bump BIND_BASELINE_VERSION for ABI checks 2020-11-26 12:30:25 +01:00