Commit Graph

33586 Commits

Author SHA1 Message Date
Matthijs Mekking
db18004d69 Migrate a single key to CSK with dnssec-policy
When migrating keys to dnssec-policy, if a zone has only one key,
assume it is going to be a CSK.

(cherry picked from commit 3ea953512a)
2021-08-23 10:36:42 +02:00
Matthijs Mekking
9df0bf8f17 Test migrating CSK to dnssec-policy
Add a test case for migrating CSK to dnssec-policy. The keymgr has no
way of telling that the key is used as a CSK, but if there is only one
key to migrate it is going to assume it must be a CSK.

(cherry picked from commit 96ee323622)
2021-08-23 10:36:37 +02:00
Michał Kępień
0ccd0468a3 Merge branch '2845-rndc-freeze-edit-include-file-thaw-v9_16' into 'v9_16'
[v9_16] Add test for in-view zone edits

See merge request isc-projects/bind9!5344
2021-08-19 10:36:49 +00:00
Mark Andrews
9eb98e024d wait for each staged to complete
(cherry picked from commit 8e189840b1)
2021-08-19 11:44:38 +02:00
Matthijs Mekking
d9b19dade5 Add test for in-view zone edits
Add a test case for GL #2845 where a zone is in two views, one base
view and one "in-view" and that zone is using an $INCLUDE. Make sure
that there is a jnl file (have ixfr-from-differences enabled and do a
dynamic update). Then freeze and make updates in the included file
(this requires the test.db file also to be updated because 'rndc freeze'
causes the zone file to be overwritten). Finally reload and ensure that
the edit in the included file has been loaded.

(cherry picked from commit 598bf1c29b)
2021-08-19 11:44:38 +02:00
Mark Andrews
b6a744479c Merge branch '2868-svbc-fromwire-should-reject-zero-length-alpn-elements-v9_16' into 'v9_16'
Reject zero length ALPN elements in fromwire

See merge request isc-projects/bind9!5343
2021-08-19 09:18:04 +00:00
Mark Andrews
7d3d7cacf9 Reject zero length ALPN elements in fromwire
(cherry picked from commit 8833d90292)
2021-08-19 18:59:29 +10:00
Mark Andrews
b1583122ca Merge branch '2867-svbc-from-wire-needs-to-check-that-alpn-in-present-when-no-default-alpn-is-present-v9_16' into 'v9_16'
Check that ALPN is present when NO-DEFAULT-ALPN is present in fromwire

See merge request isc-projects/bind9!5342
2021-08-19 08:07:15 +00:00
Mark Andrews
c9858fa078 Check that ALPN is present when NO-DEFAULT-ALPN is present in fromwire
(cherry picked from commit 2f51bb2d93)
2021-08-19 17:32:32 +10:00
Michał Kępień
6e9eb068bd Merge branch 'v9_16_20-release' into 'v9_16'
Merge 9.16.20 release branch

See merge request isc-projects/bind9!5339
2021-08-19 05:29:23 +00:00
Michał Kępień
2bbec2bf74 Set up release notes for BIND 9.16.21 2021-08-19 07:20:15 +02:00
Tinderbox User
e05387ac12 Merge branch 'prep-release' into security-v9_16 2021-08-19 07:20:15 +02:00
Michał Kępień
d17acf0df3 Merge branch 'michal/prepare-documentation-for-bind-9.16.20' into 'security-v9_16'
Prepare documentation for BIND 9.16.20

See merge request isc-private/bind9!317
2021-08-19 07:20:15 +02:00
Tinderbox User
69dcc8bb58 prep 9.16.20 2021-08-19 07:20:15 +02:00
Michal Nowak
8ae32b0972 Merge branch '2839-confidential-rrl-msgsize-v9_16' into 'security-v9_16'
[CVE-2021-25218]: assertion failure in RRL after EMSGSIZE error (v9.16)

See merge request isc-private/bind9!314
2021-08-19 07:20:15 +02:00
Michał Kępień
e5534b2991 Prepare release notes for BIND 9.16.20 2021-08-19 07:20:15 +02:00
Evan Hunt
21dbf3798c Add CHANGES and release notes for [GL #2839] 2021-08-19 07:20:15 +02:00
Michał Kępień
152a946c6e Add release note for GL #2756 2021-08-19 07:20:15 +02:00
Ondřej Surý
607f8d114e Disable the Path MTU Discover on UDP Sockets
Instead of disabling the fragmentation on the UDP sockets, we now
disable the Path MTU Discovery by setting IP(V6)_MTU_DISCOVER socket
option to IP_PMTUDISC_OMIT on Linux and disabling IP(V6)_DONTFRAG socket
option on FreeBSD.  This option sets DF=0 in the IP header and also
ignores the Path MTU Discovery.

As additional mitigation on Linux, we recommend setting
net.ipv4.ip_no_pmtu_disc to Mode 3:

    Mode 3 is a hardend pmtu discover mode. The kernel will only accept
    fragmentation-needed errors if the underlying protocol can verify
    them besides a plain socket lookup. Current protocols for which pmtu
    events will be honored are TCP, SCTP and DCCP as they verify
    e.g. the sequence number or the association. This mode should not be
    enabled globally but is only intended to secure e.g. name servers in
    namespaces where TCP path mtu must still work but path MTU
    information of other protocols should be discarded. If enabled
    globally this mode could break other protocols.
2021-08-19 07:20:15 +02:00
Michał Kępień
9407ee95c1 Reorder release notes 2021-08-19 07:20:15 +02:00
Evan Hunt
15996f0cb1 ns_client_error() could assert if rcode was overridden to NOERROR
The client->rcode_override was originally created to force the server
to send SERVFAIL in some cases when it would normally have sent FORMERR.

More recently, it was used in a3ba95116e
commit (part of GL #2790) to force the sending of a TC=1 NOERROR
response, triggering a retry via TCP, when a UDP packet could not be
sent due to ISC_R_MAXSIZE.

This ran afoul of a pre-existing INSIST in ns_client_error() when
RRL was in use. the INSIST was based on the assumption that
ns_client_error() could never result in a non-error rcode. as
that assumption is no longer valid, the INSIST has been removed.
2021-08-19 07:20:15 +02:00
Michał Kępień
1a3ac45a04 Tweak and reword release notes 2021-08-19 07:20:15 +02:00
Michał Kępień
6b2217b06f Tweak and reword recent CHANGES entries 2021-08-19 07:20:15 +02:00
Michal Nowak
ae370e3e61 Fix typos in lib/isc/trampoline_p.h 2021-08-19 07:20:15 +02:00
Mark Andrews
6beb0f660b Merge branch '1132-wip-httpssvc-record-v9_16' into 'v9_16'
[v9_16] HTTPS and SVCB records

See merge request isc-projects/bind9!5332
2021-08-18 07:26:42 +00:00
Mark Andrews
adc4fe5c06 Add CHANGES and release notes
(cherry picked from commit 8ebb05b0b7)
2021-08-18 16:54:31 +10:00
Mark Andrews
c9e67b33c1 Add check-names for svbc (https) server name examples
(cherry picked from commit f6bfc685aa)
2021-08-18 16:54:31 +10:00
Mark Andrews
e3c22ec53a Check that the hostname of the server is legal
(cherry picked from commit f46a0c27df)
2021-08-18 16:54:31 +10:00
Mark Andrews
20cb00e1a5 add tests for string and qstring
(cherry picked from commit 26b22a1445)
2021-08-18 16:54:31 +10:00
Mark Andrews
2db56ffbd8 Add unit test for keypair
(cherry picked from commit a6357d8b5c)
2021-08-18 15:00:08 +10:00
Mark Andrews
74b796fdf0 add svcb fuzzing seed
(cherry picked from commit baaa5492ee)
2021-08-18 14:59:29 +10:00
Mark Andrews
c0c38eeb36 Add invalid test vectors
(cherry picked from commit bc21015438)
2021-08-18 14:59:29 +10:00
Mark Andrews
4fd35998e6 add text vs unknown test vectors
(cherry picked from commit 3e459b4808)
2021-08-18 14:59:29 +10:00
Mark Andrews
c7130b36fc Parse and print HTTPS and SVCB records
(cherry picked from commit 36f34a3e79)
2021-08-18 14:59:29 +10:00
Mark Andrews
cc93d10c82 Add support for parsing <tag>[=<value>]
where <value> may be a quoted string.  Previously quoted string
only supported opening quotes at the start of the string.

(cherry picked from commit 42c22670b3)
2021-08-18 14:59:29 +10:00
Mark Andrews
24e5e3ffd6 Make whether to follow additional data records generic
Adds dns_rdatatype_followadditional() and
DNS_RDATATYPEATTR_FOLLOWADDITIONAL

(cherry picked from commit f0265b8fa6)
2021-08-18 14:59:20 +10:00
Matthijs Mekking
24921fdac4 Merge branch '2665-qname-minimization-disabled-after-first-resolution-v9_16' into 'v9_16'
QNAME minimization is bypassed with stale zonecut in cache (9.16)

See merge request isc-projects/bind9!5329
2021-08-16 17:50:59 +00:00
Mark Andrews
4ba4d7cfbe More correctly implement ends with label sequence check
string.endswith("label.sequence") doesn't check for the implict
period before "label.sequence" when matching longer strings.

"foo.label.sequence" should match but "foolabel.sequence shouldn't".

(cherry picked from commit f79876b2d5)
2021-08-16 19:32:16 +02:00
Matthijs Mekking
086236910a Add change entry and release note for GL #2665
(cherry picked from commit 192329d3c6)
2021-08-16 19:32:16 +02:00
Matthijs Mekking
5688bd31e3 Don't use stale nodes when looking up a zonecut
When looking up a zonecut in cache, we use 'dns_rbt_findnode' to find
the closest matching node. This function however does not take into
account stale nodes. When we do find a stale node and use it, this
has implications for subsequent lookups. For example, this may break
QNAME minimization because we are using a deeper zonecut than we should
have.

Check the header for staleness and if so, and stale entries are not
accepted, look for the deepest zonecut from this node up.

(cherry picked from commit bc448fb3b1)
2021-08-16 19:32:16 +02:00
Matthijs Mekking
5c23ec44bd Add extra checks for !ANCIENT(header)
There are some occurrences where we check if a header exists in the
rbtdb. These cases require that the header is also not marked as
ancient (aka ready for cleanup). These cases involve finding certain
data in cache.

(cherry picked from commit e2d4896864)
2021-08-16 16:42:41 +02:00
Matthijs Mekking
ca0f078dbc Add qmin test cases when RRset has expired
Add test cases for GL #2665: The QNAME minimization (if enabled) should
also occur on the second query, after the RRsets have expired from
cache. BIND will still have the entries in cache, but marked stale.
These stale entries should not prevent the resolver from minimizing
the QNAME. We query for the test domain a.b.stale. in all cases (QNAME
minimization off, strict mode, and relaxed mode) and expect it to
behave the same the second time we have a stale delegation structure in
cache.

(cherry picked from commit 322626ab5b)
2021-08-16 16:42:34 +02:00
Evan Hunt
f17f673772 Merge branch 'feature/master/dig-return-codes-v9_16' into 'v9_16'
Document return codes of dig

See merge request isc-projects/bind9!5326
2021-08-12 17:38:22 +00:00
Petr Menšík
ca52adf81c Document return codes of dig
The dig tool reports some states as exit status. Document them briefly
in the manual page.

(cherry picked from commit f20cc30a6a)
2021-08-12 10:34:46 -07:00
Mark Andrews
5a1fbc3155 Merge branch '2844-rndc-freeze-command-always-fails-perhaps-due-to-in-view-v9_16' into 'v9_16'
Check 'rndc freeze' with in-view zones works

See merge request isc-projects/bind9!5322
2021-08-12 04:38:54 +00:00
Mark Andrews
17c0d3f054 Add CHANGES not for [GL #2844]
(cherry picked from commit 1f8ef7cfe2)
2021-08-12 04:19:44 +00:00
Mark Andrews
42856b25bd Don't freeze / thaw non-explict in-view zones
(cherry picked from commit dcdd9a403a)
2021-08-12 04:19:44 +00:00
Mark Andrews
3376aec286 Check 'rndc freeze' with in-view zones works
(cherry picked from commit ebc92b799b)
2021-08-12 04:19:44 +00:00
Mark Andrews
1991f7de92 Merge branch 'marka-remove-print0-run.sh-v9_16' into 'v9_16'
replace '-print0 | xargs -0' with '-exec ... {} +'

See merge request isc-projects/bind9!5323
2021-08-12 02:06:43 +00:00
Mark Andrews
e7e6b50300 replace '-print0 | xargs -0' with '-exec ... {} +'
(cherry picked from commit de88d83a78)
2021-08-12 11:12:32 +10:00