Commit graph

8077 commits

Author SHA1 Message Date
Yorgos Thessalonikefs
bc61034f60
code review: use proper roundrobin index
Co-authored-by: Wouter Wijngaards <wcawijngaards@users.noreply.github.com>
2025-09-17 12:19:20 +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
Yorgos Thessalonikefs
dd6200065f - Update man pages. 2025-09-08 14:50:27 +02:00
Yorgos Thessalonikefs
a72177e73c - Update documentation for using "SET ... EX" in Redis.
- Document max buffer sizes for Redis commands.
2025-09-08 14:49:12 +02:00
W.C.A. Wijngaards
5588f66bdb - For #1328: make depend. 2025-09-03 14:04:24 +02:00
W.C.A. Wijngaards
85e916e7e0 - Fix indentation in tcp-mss option parsing. 2025-09-02 17:12:14 +02:00
W.C.A. Wijngaards
af96824642 - Fix #1324: Memory leak in 'msgparse.c' in
'parse_edns_options_from_query(...)'.
2025-09-02 17:10:42 +02:00
W.C.A. Wijngaards
8faa95354d - Fix #1235: Outdated Python2 code in
unbound/pythonmod/examples/log.py.
2025-09-02 12:54:03 +02:00
W.C.A. Wijngaards
c57c39833e - Fix for #1324: Fix to free edns options scratch in ratelimit case. 2025-09-01 09:28:29 +02:00
Yorgos Thessalonikefs
44da5eee66 - Limit the number of consecutive reads on an HTTP/2 session.
Thanks to Gal Bar Nahum for exposing the possibility of infinite
  reads on the session.
2025-08-29 15:35:32 +02:00
W.C.A. Wijngaards
74bc8c9e77 - Fix setup_listen_sslctx warning for nettle compile. 2025-08-28 14:19:52 +02:00
W.C.A. Wijngaards
0c558cb805 - Fix unbound-control dump_cache for double unlock of lruhash table.
Changelog entry.
2025-08-27 16:55:55 +02:00
W.C.A. Wijngaards
533291dce9 - Fix unbound-control dump_cache for double unlock of lruhash table. 2025-08-27 16:55:38 +02:00
W.C.A. Wijngaards
e613e27f35 - Fix ports workflow to install expat for macos. 2025-08-26 14:41:13 +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
W.C.A. Wijngaards
c170ed1b30 - Fix sha1 enable environment variable in test code on windows. 2025-08-22 10:04:57 +02:00
W.C.A. Wijngaards
ebfa09e04f - For #1318: Fix compile warnings for DoH compile on windows. 2025-08-22 10:04:00 +02:00
W.C.A. Wijngaards
65be1d0ec3 - Fix for #1317: Fix contrib/unbound.service comment path for
systemd network configuration.
2025-08-21 15:49:42 +02:00
W.C.A. Wijngaards
ca36e21f71 - Fix #1317: Unbound starts too early. Add
Wants=network-online.target under [Unit] in unbound.service.
2025-08-21 15:14:42 +02:00
W.C.A. Wijngaards
458c793012 - Fix to check for extraneous command arguments for unbound-control,
when the command takes no arguments but there are arguments present.
Changelog note for the fix.
2025-08-21 10:00:41 +02:00
W.C.A. Wijngaards
1341905de8 - Fix to check for extraneous command arguments for unbound-control,
when the command takes no arguments but there are arguments present.
2025-08-21 09:47:24 +02:00
W.C.A. Wijngaards
1d877400ea - Fix cache_lookup subnet print to not print messages without rrsets
and perform in-depth check on node in the addrtree.
2025-08-15 16:04:34 +02:00
W.C.A. Wijngaards
8fd4b91afc - Fix cache_lookup subnet print to not print messages without rrsets
and perform in-depth check on node in the addrtree.
2025-08-15 16:04:23 +02:00
W.C.A. Wijngaards
523710f371 - Fix cache_lookup subnet printout to wipe zero part of the prefix.
Changelog entry.
2025-08-15 14:07:05 +02:00
W.C.A. Wijngaards
13bb78a740 - Fix cache_lookup subnet printout to wipe zero part of the prefix. 2025-08-15 14:06:54 +02:00
W.C.A. Wijngaards
1e37f86ef5 - unbound-control cache_lookup +t allows tld and root names. And
subnet cache contents are printed.
Changelog, documentation and unit test.
2025-08-15 13:03:31 +02:00
W.C.A. Wijngaards
81345fe1e3 - unbound-control cache_lookup +t allows tld and root names. And
subnet cache contents are printed.
2025-08-15 13:03:00 +02:00
W.C.A. Wijngaards
40877f46e5 - Fix to decouple file descriptor activity and cache lookups in
dump_cache.
Changelog note.
2025-08-14 12:20:22 +02:00
W.C.A. Wijngaards
991108af8d - Fix to decouple file descriptor activity and cache lookups in
dump_cache.
2025-08-14 12:20:10 +02:00
W.C.A. Wijngaards
4f790bd65e - Fix to increase responsiveness of dump_cache. 2025-08-14 11:25:40 +02:00
W.C.A. Wijngaards
d122ae6490 - Fix to unlock cache_lookup message for malformed records. 2025-08-13 12:02:41 +02:00
W.C.A. Wijngaards
651a71fa76 - Fix to remove debug from cache_lookup. 2025-08-13 11:59:53 +02:00
W.C.A. Wijngaards
2f7890eb6e - unbound-control cache_lookup <domains> prints the cached rrsets
and messages for those.
Changelog and information.
2025-08-13 11:36:47 +02:00
W.C.A. Wijngaards
fad747308f - unbound-control cache_lookup <domains> prints the cached rrsets
and messages for those.
2025-08-13 11:31:42 +02:00
W.C.A. Wijngaards
d55f20fdcc - Fix that unbound-control dump_cache releases the cache locks
every so often, so that the server stays responsive.
Changelog entry for it.
2025-08-12 12:00:01 +02:00
W.C.A. Wijngaards
19b289feec - Fix that unbound-control dump_cache releases the cache locks
every so often, so that the server stays responsive.
2025-08-12 11:59:48 +02:00
W.C.A. Wijngaards
752a3f7f52 - Fix to whitespace in dname_str. 2025-08-07 16:19:10 +02:00
W.C.A. Wijngaards
3ec5d78ac9 - Fix that edns-subnet failure to create a subquery errors as
servfail, and not formerror.
2025-08-07 16:09:47 +02:00
W.C.A. Wijngaards
08d59c9a78 - Fix dname_str for printout of long names. Thanks to Jan Komissar
for the fix.
2025-08-07 09:45:02 +02:00
W.C.A. Wijngaards
cdcc0337d1 - Fix edns subnet, so that the subquery without subnet is stored in
global cache if the querier used 0.0.0.0/0 and the name and address
  do not receive subnet treatment. If the name and address are
  configured for subnet, it is stored in the subnet cache.
2025-08-06 12:08:44 +02:00
W.C.A. Wijngaards
305adf12bf - Fix edns subnet, so that the subquery without subnet is stored in
global cache if the querier used 0.0.0.0/0 and the name and address
  do not receive subnet treatment. If the name and address are
  configured for subnet, it is stored in the subnet cache.
2025-08-06 12:01:42 +02:00
W.C.A. Wijngaards
3d7e847a5e - Fix to use assertions for consistency checks in #1309 reclaimed 2025-08-05 16:20:01 +02:00
W.C.A. Wijngaards
da6b735ed9 - Fix #1309: incorrectly reclaimed tcp handler can cause data
corruption and segfault.
2025-08-05 15:46:54 +02:00
W.C.A. Wijngaards
5758427d86 - Fix testbound test program to accurately output packets from hex. 2025-08-01 10:34:12 +02:00
W.C.A. Wijngaards
4f12148af4 - Fix redis cachedb module gettimeofday init failure.
Changelog note for the fix.
2025-07-28 09:33:42 +02:00
W.C.A. Wijngaards
f8f4779f1f - Fix redis cachedb module gettimeofday init failure. 2025-07-28 09:32:55 +02:00
W.C.A. Wijngaards
da9ab59e10 - Redis checks for server down and throttles reconnects.
And unit test for redis reconnect interval.
2025-07-24 11:06:00 +02:00
W.C.A. Wijngaards
424f86466a - Redis checks for server down and throttles reconnects. 2025-07-24 11:05:25 +02:00