Commit graph

1513 commits

Author SHA1 Message Date
W.C.A. Wijngaards
d725d94793 Merge branch 'master' into simdzone-zone-load 2026-01-29 09:06:38 +01:00
W.C.A. Wijngaards
039f69e735 - Fix to not skip allow-notify hostname lookups when there are only
Some checks are pending
ci / build (push) Waiting to run
urls.
2026-01-26 16:16:38 +01:00
W.C.A. Wijngaards
933769ee73 - Fix that allow-notify entries with hostnames are copied after IPv4
and IPv6 lookup.
2026-01-26 15:16:43 +01:00
W.C.A. Wijngaards
76f0bb8ba2 - simdzone-zone-load, use_simdzone variable to switch sldns and simdzone parse. 2026-01-23 11:33:27 +01:00
W.C.A. Wijngaards
d99a4375bf Merge branch 'master' into simdzone-zone-load 2026-01-21 14:55:50 +01:00
nnarayanamurthy
fe10bc7682
QNX Porting support for unbound branch-1.24.1 (#1388)
* qnx Porting support for version release-1.24.1

* updating __QNXNTO__ with __QNX__
2026-01-21 13:12:13 +01:00
W.C.A. Wijngaards
a72374000e - simdzone-zone-load, fix to use chrootdir adjustment when dealing with
$INCLUDE in a zonefile read.
2026-01-16 13:46:03 +01:00
W.C.A. Wijngaards
285b5aa461 - sidzone-zone-load, set no_includes option for http transferred files. 2026-01-16 13:43:16 +01:00
W.C.A. Wijngaards
a50dd4e407 - simdzone-zone-load, implement that the auth http transferred zone files are
parsed with simdzone parse from callback.
2026-01-13 16:25:46 +01:00
W.C.A. Wijngaards
966801a984 - simdzone-zone-load, move sldns auth https download parse to another routine. 2026-01-13 15:35:17 +01:00
W.C.A. Wijngaards
6084171db7 Merge branch 'master' into simdzone-zone-load 2026-01-13 15:21:58 +01:00
Petr Menšík
18e098285e
Do not initialize quic_table unless it is enabled (#1381)
* Do not initialize quic_table unless it is enabled

Fedora in FIPS mode might fail to initialize ngtcp2 library, because
some ciphers desired are not available.

Make it possible to skip initialization by setting explicitly quic_port
to 0. Unless we have some listeners for port 853 configured, skip its
initialization as well.

Related: https://pagure.io/freeipa/issue/9877

* Fix typo in logged function name
2026-01-08 14:12:32 +01:00
W.C.A. Wijngaards
d34733a69b - simdzone-zone-load, stat the zonefile, instead of opening it, and then
clear the data.
2025-12-10 16:27:33 +01:00
W.C.A. Wijngaards
e1faea02de - simdzone-zone-load, use cfg for _state struct in az_parse_file_simdzone
function.
2025-12-10 16:12:21 +01:00
W.C.A. Wijngaards
b9df07d8bb - simdzone-zone-load, fix return value and variable name for rdata. 2025-12-10 11:56:40 +01:00
W.C.A. Wijngaards
ea9c957213 - simdzone-zone-load, remove copy of rdata from simdzone accept path for
ordinary zone read.
2025-12-10 11:39:24 +01:00
W.C.A. Wijngaards
3b2a2e2440 Merge branch 'master' into simdzone-zone-load 2025-12-08 14:59:56 +01:00
W.C.A. Wijngaards
0557fdb940 - simdzone-zone-load, use simdzone for auth-zone and rpz zone read.
Fix unittest for ZONEMD to have correct digest length for test entry.
2025-12-08 14:51:37 +01:00
W.C.A. Wijngaards
c0522043f0 - Fix http2 drop handling to clear the postpone_drop state so that
Some checks failed
ci / build (push) Has been cancelled
other streams on the http2 session are not affected by a drop,
  and can clean up properly if also dropped. Fix http2 send reply
  so that when there is a send failure is does not recurse into
  the mesh functions and also does not drop the connection due to
  the condition of one stream.
2025-12-03 14:41:10 +01:00
W.C.A. Wijngaards
b858801feb - Fix to remove http2 stream mesh state when mesh new request is
Some checks are pending
ci / build (push) Waiting to run
dropping the new request.
2025-12-02 15:31:53 +01:00
Robert Edmonds
fceb4e8585
Mesh reply counters (#1374)
* Statistics counter for number of queries dropped by limit on reply addresses

Request list entries can be associated with multiple pending "reply
addresses". Basically each request list entry keeps its own list of
clients that should receive the response once the recursion is finished.
This requires keeping allocations around for each client, and there is
a global limit on the number of *additional* reply addresses that can
be allocated. (Each new request list entry seems to get its own initial
reply address which is not counted against the limit.)

This commit adds a statistics counter "num_queries_replyaddr_limit" that
counts the number of incoming client queries that have been dropped due
to the restriction on allocating additional reply addresses. This allows
distinguishing these drops from other kinds of drops.

* Statistics counter for number of mesh reply entries

Request list entries can be associated with multiple pending "reply
addresses". Since there is a limit on the number of additional reply
addresses that can be allocated which can cause incoming queries to be
dropped if exceeded, it would be nice to be able to track this number.

This commit basically exports the mesh_area's internal counter
`num_reply_addrs` as "threadX.requestlist.current.replies" /
"total.requestlist.current.replies".
2025-11-13 09:33:05 +01:00
W.C.A. Wijngaards
0a15118aff - Fix that when discard timeout drops packet, they are accounted as
less reply addresses in use in the mesh area.
2025-11-12 11:49:04 +01:00
W.C.A. Wijngaards
f6b4582eec Merge branch 'master' into simdzone-zone-load 2025-10-16 12:11:55 +02:00
W.C.A. Wijngaards
c8860a5fb6 - Fix to reply with SERVFAIL when the wait-limit is exceeded. 2025-10-15 11:36:29 +02:00
W.C.A. Wijngaards
735c96aac7 - Fix to drop UDP for discard-timeout, but not stream connections. 2025-10-15 11:04:22 +02:00
W.C.A. Wijngaards
3e71cf89cb - simdzone-zone-load, function call to simdzone and build fix for export.h. 2025-10-14 16:33:07 +02:00
Yorgos Thessalonikefs
21f02a0865 - Note clearly that 'wait-limit: 0' disables all wait limits.
- 'wait-limit-cookie: 0' can now disable cookie validated wait
  limits.
2025-10-03 16:44:44 +02:00
W.C.A. Wijngaards
feeebc95f8 - Fix for #1344: Fix that respip and dns64 can be enabled at the
same time, the client info is copied for attach_sub and add_sub
  calls. That makes respip work on dns64 synthesized answers, and
  also makes RPZ work with DNS64. The order for the modules is
  module-config: "respip dns64 validator iterator".
2025-09-30 11:28:15 +02:00
W.C.A. Wijngaards
f1fea8dc46 - Fix #1353: auth-zone can not use empty label for $ORIGIN when
http download.
2025-09-29 14:24:31 +02:00
W.C.A. Wijngaards
6cd595a816 - Fix modstack_call_init to use the original string when it has
changed, to call modstack_config with. And skip the changed name
  in the string correctly. Thanks to Jan Komissar.
2025-09-29 11:31:50 +02:00
Yorgos Thessalonikefs
64645e1401 - Avoid calling mesh_detect_cycle_found() when there is no mesh state
to begin with.
2025-09-24 14:30:24 +02:00
Yorgos Thessalonikefs
e2bf773089 Merge branch 'features/no-ttl-zero-cacherep' 2025-09-19 14:56:04 +02:00
W.C.A. Wijngaards
713b5db537 - Fix to print warning for when so-sndbuf setsockopt is not granted. 2025-09-15 16:11:27 +02:00
Yorgos Thessalonikefs
73e408f1d0 A few changes for TTL processing:
- Cached messages that reach 0 TTL are considered expired. This prevents
  Unbound itself from issuing replies with TTL 0 and possibly causing a
  thundering herd at the last second. Upstream replies of TTL 0 still
  get the usual pass-through but they are not considered for caching
  from Unbound or any of its caching modules.
- 'serve-expired-reply-ttl' is changed and is now capped by the original
  TTL value of the record to try and make some sense when replying
  with expired records.
- TTL decoding was updated to adhere to RFC8767 section 4 where a set
  high-order bit means the value is positive instead of 0.
2025-09-15 10:03:35 +02:00
Yorgos Thessalonikefs
d521135f66 Merge branch 'master' into features/no-ttl-zero-cacherep 2025-09-12 15:24:06 +02:00
W.C.A. Wijngaards
4267de87b5 - Fix #1332: CNAME chains are sometimes not followed when RPZs add a
local CNAME rewrite.
2025-09-09 12:34:11 +02:00
W.C.A. Wijngaards
f2f36a2733 - Fix that the zone acquired timestamp is set after the
zonefile is read.
2025-08-22 14:06:51 +02:00
W.C.A. Wijngaards
78d9bcacb6 - Fix #1319: [FR] zone status for Unbound auth-zones. 2025-08-22 12:40:00 +02:00
Roland van Rijswijk-Deij
44ac818f87
Add extra statistic to track the number of signature validation operations (#1289)
* Add extra statistic to track the number of signature validation operations performed by the validator module

* Move validation operation statistic to mesh as suggested

* Fix NULL pointer dereference in case the mesh is not used (and is `NULL`)

Co-authored-by: Wouter Wijngaards <wcawijngaards@users.noreply.github.com>

* Fix NULL pointer dereference on qstate and qstate->env in unit test situation

---------

Co-authored-by: Wouter Wijngaards <wcawijngaards@users.noreply.github.com>
2025-07-12 16:29:38 +02:00
W.C.A. Wijngaards
cb919d5126 - For #1300: implement sock-queue-timeout for FreeBSD as well. 2025-07-03 15:54:33 +02:00
Jose Luis Duran
41c55ffac1
Fix typos (#1299) 2025-07-02 10:50:49 +02:00
W.C.A. Wijngaards
ce72770f61 - Fix rrset cache create allocation failure case. 2025-06-19 16:27:13 +02:00
W.C.A. Wijngaards
a1d68cdc96 - Fix #1296: DNS over QUIC depends on a very outdated version of
ngtcp2. Fixed so it works with ngtcp2 1.13.0 and OpenSSL 3.5.0.
2025-06-19 14:39:45 +02:00
Yorgos Thessalonikefs
9201c75013 - Fix for consistent use of local zone CNAME alias for configured auth
zones. Now it also applies to downstream configured auth zones.
2025-06-17 15:03:29 +02:00
W.C.A. Wijngaards
a8aa1dbbe1 - Fix conditional expressions with parentheses for bitwise and. 2025-06-11 16:42:43 +02:00
W.C.A. Wijngaards
03772d10fb - Change default for so-sndbuf to 1m, to mitigate a cross-layer
issue where the UDP socket send buffers are exhausted waiting
  for ARP/NDP resolution. Thanks to Reflyable for the report.
2025-05-13 15:04:32 +02:00
Yorgos Thessalonikefs
a35ac5d82e - Fix #1284: NULL pointer deref in az_find_nsec_cover() (latent bug)
by adding a log_assert() to safeguard future development.
2025-05-13 11:00:23 +02:00
Yorgos Thessalonikefs
4e23523d1a
Fix auth nsec3 code (#1280)
- Fix NSEC3 code to not break on broken auth zones that include unsigned
  out of zone (above apex) data. Could lead to hang while trying to
  prove a wildcard answer.
  Reported by Dmitrii Kuvaiskii from Amazon Web Services.

- Tests for NSEC3 auth zones with out of zone data.
2025-05-12 14:26:47 +02:00
Yorgos Thessalonikefs
5dd14e2644 - Sync unbound and unbound-checkconf log output for unknown modules. 2025-05-05 14:47:12 +02:00
W.C.A. Wijngaards
16ee7cf944 - Fix for print of connection type in log-replies for dot and doh. 2025-04-10 09:33:51 +02:00