Michal Nowak
7a161f615a
Rewrite masterfile system test to pytest
2024-03-19 10:51:02 +01:00
Michal Nowak
686033e48d
Add zones_equal() with optional TTL comparison
2024-03-19 10:51:02 +01:00
Michal Nowak
5af3b713af
Modify rrsets_equal() to optionally compare TTL
2024-03-19 10:51:01 +01:00
Michal Nowak
db272a4968
Merge branch 'mnowak/pytest_rewrite_limits' into 'main'
...
Rewrite limits system test to pytest
See merge request isc-projects/bind9!8798
2024-03-18 15:32:47 +00:00
Michal Nowak
f90a772298
Rewrite limits system test to pytest
...
Also, tweak the IP ranges of A RRsets so they are more easily processed
by for loops.
2024-03-18 15:59:46 +01:00
Michal Nowak
67087b6c43
Merge branch 'mnowak/freebsd-13.3' into 'main'
...
Add FreeBSD 13.3
See merge request isc-projects/bind9!8826
2024-03-18 14:59:33 +00:00
Michal Nowak
9019985d2d
Add FreeBSD 13.3
2024-03-18 15:36:54 +01:00
Mark Andrews
0906848ae9
Merge branch '4641-dig-ednsflags-does-not-re-enable-edns' into 'main'
...
Resolve "dig +ednsflags does not re-enable EDNS"
Closes #4641
See merge request isc-projects/bind9!8874
2024-03-17 03:06:22 +00:00
Mark Andrews
b41d1820d2
Add CHANGES for [GL #4641
2024-03-16 16:26:47 +11:00
Mark Andrews
8babbd09a1
Test +noedns +ednsflags=non-zero-value
2024-03-16 16:26:17 +11:00
Mark Andrews
d74bba4fae
Re-enable EDNS if an EDNS flag gets set to 1 by +ednsflags
...
This is consistent with +dnssec and +nsid which only re-enable
EDNS if do is set to 1 or nsid is requested.
2024-03-16 16:07:55 +11:00
Michal Nowak
cbc121ce9a
Merge branch 'mnowak/move-stress-tests-to-freebsd-13' into 'main'
...
FreeBSD "stress" tests now run on FreeBSD 13.2
See merge request isc-projects/bind9!8689
2024-03-15 11:12:11 +00:00
Michal Nowak
176bf877e1
FreeBSD "stress" tests now run on FreeBSD 13.2
2024-03-15 12:11:08 +01:00
Michal Nowak
f7f7b09d98
Merge branch 'mnowak/pytest_rewrite_rrchecker' into 'main'
...
Rewrite rrchecker system test to pytest
See merge request isc-projects/bind9!8832
2024-03-15 09:05:20 +00:00
Michal Nowak
6a301c1d35
Rewrite rrchecker system test to pytest
2024-03-15 09:40:01 +01:00
Mark Andrews
4be1db6e82
Merge branch '4639-add-openssl-flags-to-proxystream_test' into 'main'
...
Resolve "Add OpenSSL Flags to proxystream_test"
Closes #4639
See merge request isc-projects/bind9!8869
2024-03-14 23:42:25 +00:00
Mark Andrews
52b053537d
Add OpenSSL libraries and flags to proxystream_test
2024-03-15 10:08:57 +11:00
Evan Hunt
120b4a9ef9
Merge branch '4614-qpdb-excess-memory' into 'main'
...
reduce memory consumption of QP zone and cache databases
Closes #4614
See merge request isc-projects/bind9!8849
2024-03-14 18:06:54 +00:00
Evan Hunt
1f67a3f474
CHANGES for [GL #4614 ]
2024-03-14 10:25:12 -07:00
Evan Hunt
17186e06bb
reduce memory consumption of the remaining QP databases
...
use dynamically allocated names instead of fixednames in
forward.c, keytable.c, nametree.c, and nta.c
2024-03-14 10:25:07 -07:00
Evan Hunt
c0fcc2899e
reduce memory consumption of rpz summary database
...
use dynamically allocated names instead of fixednames in rpz.c
2024-03-14 10:20:52 -07:00
Evan Hunt
8b67476249
reduce memory consumption of qpcache database
...
as with qpzone, use a dynamically-allocated dns_name instead
of a dns_fixedname object to store node names in the QP database.
2024-03-14 10:20:52 -07:00
Evan Hunt
f908d358c4
reduce memory consumption of qpzone database
...
every node of a QP database contains a copy of the nodename,
which is used as the key for the QP-trie. previously, the name
was stored as a dns_fixedname object, which has room for up to
255 characters. we can reduce the space consumed by dynamically
allocating a dns_name object that's just long enough for the name
to be stored.
2024-03-14 10:20:52 -07:00
Matthijs Mekking
78aa2fb64c
Merge branch '4629-cid-487882-error-handling-issues' into 'main'
...
Resolve "CID 487882: Error handling issues in lib/dns/qpzone.c"
Closes #4629
See merge request isc-projects/bind9!8852
2024-03-14 14:12:57 +00:00
Matthijs Mekking
ad33a73f83
Fix Coverity CID 487882: Error handling issues
...
The dns_qpiter_next() was called without checking the return value. If
we cannot move the iterator forward, there is no use in calling the
step() function.
/lib/dns/qpzone.c: 2804 in activeempty()
2798 * of the name we were searching for. Step the iterator
2799 * forward, then step() will continue forward until it
2800 * finds a node with active data. If that node is a
2801 * subdomain of the one we were looking for, then we're
2802 * at an active empty nonterminal node.
2803 */
>>> CID 487882: Error handling issues (CHECKED_RETURN)
>>> Calling "dns_qpiter_next" without checking return value (as is done elsewhere 26 out of 27 times).
2804 dns_qpiter_next(it, NULL, NULL, NULL);
2805 return (step(search, it, FORWARD, next) &&
2806 dns_name_issubdomain(next, current));
2807 }
2024-03-14 14:01:23 +01:00
Matthijs Mekking
8d3f601a6b
Merge branch 'matthijs-add-rfc-9460-to-arm' into 'main'
...
Add RFC 9460 to list of supported RFCs
See merge request isc-projects/bind9!8847
2024-03-14 12:53:23 +00:00
Matthijs Mekking
5b5f43babc
Add RFC 9460 to list of supported RFCs
...
The specification was implemented (#1132 ) when it was a draft. Now that
it is RFC, add the RFC to the list of supported RFCs.
2024-03-14 12:52:42 +00:00
Matthijs Mekking
4d560d5ffd
Merge branch '4631-cid-487884-dead-code-in-qpcache' into 'main'
...
Resolve "CID 487884: Dead code in qpcache.c"
Closes #4631
See merge request isc-projects/bind9!8853
2024-03-14 11:50:17 +00:00
Matthijs Mekking
659fa0cbc3
Fix Coverity CID 487884: Dead code in qpcache.c
...
Adding a changed record is zonedb related and does not belong in
the cache code. This is a leftover dead code and can be safely
removed.
/lib/dns/qpcache.c: 3459 in add()
3453 }
3454 newheader->next = topheader->next;
3455 newheader->down = topheader;
3456 topheader->next = newheader;
3457 qpnode->dirty = 1;
3458 if (changed != NULL) {
>>> CID 487884: (DEADCODE)
>>> Execution cannot reach this statement: "changed->dirty = true;".
3459 changed->dirty = true;
3460 }
3461 } else {
3462 /*
3463 * No rdatasets of the given type exist at the node.
3464 */
/lib/dns/qpcache.c: 3409 in add()
3403 }
3404 newheader->next = topheader->next;
3405 newheader->down = topheader;
3406 topheader->next = newheader;
3407 qpnode->dirty = 1;
3408 if (changed != NULL) {
>>> CID 487884: (DEADCODE)
>>> Execution cannot reach this statement: "changed->dirty = true;".
3409 changed->dirty = true;
3410 }
3411 mark_ancient(header);
3412 if (sigheader != NULL) {
3413 mark_ancient(sigheader);
3414
2024-03-14 10:42:30 +00:00
Matthijs Mekking
1102c5d552
Merge branch '4624-duration-error-checking' into 'main'
...
Detect invalid durations
Closes #4624
See merge request isc-projects/bind9!8844
2024-03-14 10:08:43 +00:00
Matthijs Mekking
bc600ae2a1
Add CHANGES and release note for #4624
2024-03-14 09:07:44 +01:00
Matthijs Mekking
e39de45adc
Detect invalid durations
...
Be stricter in durations that are accepted. Basically we accept ISO 8601
formats, but fail to detect garbage after the integers in such strings.
For example, 'P7.5D' will be treated as 7 days. Pass 'endptr' to
'strtoll' and check if the endptr is at the correct suffix.
2024-03-14 08:51:46 +01:00
Mark Andrews
fd49abf254
Merge branch '4608-ensure-static-stub-ns-records-are-not-returned' into 'main'
...
Resolve "Ensure static stub NS records are not returned"
Closes #4608
See merge request isc-projects/bind9!8790
2024-03-14 04:16:39 +00:00
Mark Andrews
6a91862ac5
Add CHANGES note for [GL #4608 ]
2024-03-14 11:40:10 +11:00
Mark Andrews
229bf863e2
Check static-stub synthesised NS is not returned
2024-03-14 11:39:27 +11:00
Mark Andrews
40816e4e35
Don't use static stub when returning best NS
...
If we find a static stub zone in query_addbestns look for a parent
zone which isn't a static stub.
2024-03-14 11:39:27 +11:00
Evan Hunt
5a17764a77
Merge branch '4630-deadcode-fix' into 'main'
...
Resolve "CID 487883: Null pointer dereference in lib/dns/qpzone.c"
Closes #4630
See merge request isc-projects/bind9!8854
2024-03-14 00:15:38 +00:00
Evan Hunt
b3c8b5cfb2
remove dead code in rbtdb.c
...
dns_db_addrdataset() enforces a requirement that version can only
be NULL for a cache database. code that checks for zone semantics
and version == NULL can never be reached.
2024-03-13 17:15:18 -07:00
Evan Hunt
29f1c93734
support nodefullname in rbt-zonedb.c
...
this enables the 'dyndb' system test to pass when we
build using --with-zonedb=rbt.
2024-03-13 17:15:18 -07:00
Evan Hunt
f0b164430a
remove dead code in qpzone.c
...
qpzone does not support cache semantics, so dns_db_addrdataset(),
_deleterdataset() and _subtractrdataset() can't be run with
version == NULL; there's no need to check for it.
we can also clean up free_qpdb() a bit since current_version
is always non-NULL.
2024-03-13 17:15:18 -07:00
Mark Andrews
41eed193b2
Merge branch '4633-undefined-behaviour-in-rdataslab-c' into 'main'
...
Resolve "Undefined behaviour in rdataslab.c"
Closes #4633
See merge request isc-projects/bind9!8855
2024-03-13 23:40:17 +00:00
Mark Andrews
228cc557fe
Only call memmove if the rdata length is non zero
...
This avoids undefined behaviour on zero length rdata where the
data pointer is NULL.
2024-03-13 23:04:56 +00:00
Matthijs Mekking
377bd35574
Merge branch '4552-keymgr-depends-function-bug' into 'main'
...
Fix bug in keymgr Depends function
Closes #4552
See merge request isc-projects/bind9!8682
2024-03-13 10:46:25 +00:00
Matthijs Mekking
32e43764dd
Add CHANGES for #4552
2024-03-13 10:58:45 +01:00
Matthijs Mekking
0aac81cf80
Fix bug in keymgr Depends function
...
The Depends relation refers to types of rollovers in which a certain
record type is going to be swapped. Specifically, the Depends relation
says there should be no dependency on the predecessor key (the set
Dep(x, T) must be empty).
But if the key is phased out (all its states are in HIDDEN), there is
no longer a dependency. Since the relationship is still maintained
(Predecessor and Successor metadata), the keymgr_dep function still
returned true. In other words, the set Dep(x, T) is not considered
empty.
This slows down key rollovers, only retiring keys when the successor
key has been fully propagated.
2024-03-13 10:58:24 +01:00
Michał Kępień
03c040da53
Merge branch 'michal/set-up-version-and-release-notes-for-bind-9.19.23' into 'main'
...
Set up version and release notes for BIND 9.19.23
See merge request isc-projects/bind9!8856
2024-03-13 08:59:24 +00:00
Michał Kępień
33bdbfe2f5
Set up release notes for BIND 9.19.23
2024-03-13 09:51:24 +01:00
Michał Kępień
df0229e7ee
Update BIND version to 9.19.23-dev
2024-03-13 09:51:24 +01:00
Michał Kępień
d01a4e5fc6
Update BIND version for release
v9.19.22
2024-03-12 09:33:06 +01:00
Michał Kępień
0ba0025566
Add a CHANGES marker
2024-03-12 09:33:06 +01:00