[PR #3311] [MERGED] Recursor Retransmission Policy #3734

Closed
opened 2026-03-16 11:59:41 +03:00 by kerem · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/hickory-dns/hickory-dns/pull/3311
Author: @marcus0x62
Created: 10/13/2025
Status: Merged
Merged: 10/29/2025
Merged by: @marcus0x62

Base: mainHead: recursor_retransmission_policy


📝 Commits (5)

  • fa06edf resolver: fix misleading indentation
  • ba4d450 proto: introduce retry_interval for unreliable protocols
  • 2d99128 conformance: add better condition detection to packet loss test
  • 7e50287 proto: unit test for DNSSEC validation loop
  • b6d7e24 proto: stop DNSSEC validation cycle in verify_default_rrset

📊 Changes

13 files changed (+513 additions, -103 deletions)

View changed files

📝 conformance/Cargo.lock (+12 -0)
📝 conformance/conformance-tests/src/resolver/dns/scenarios/packet_loss.rs (+59 -2)
📝 conformance/test-server/src/handlers.rs (+4 -2)
📝 crates/proto/Cargo.toml (+2 -2)
📝 crates/proto/src/dnssec/handle.rs (+28 -5)
📝 crates/proto/src/op/dns_request.rs (+17 -2)
📝 crates/proto/src/udp/mod.rs (+8 -0)
📝 crates/proto/src/udp/udp_client_stream.rs (+262 -73)
📝 crates/resolver/src/name_server.rs (+15 -7)
📝 crates/resolver/src/name_server_pool.rs (+11 -4)
📝 fuzz/Cargo.lock (+13 -1)
📝 tests/integration-tests/tests/integration/invalid_nsec3_tests.rs (+54 -2)
📝 tests/test-support/src/lib.rs (+28 -3)

📄 Description

Addresses #2645 by introducing a retry interval for UdpClientStream. Setting this as a draft for now.

  • invalid_nsec3_tests::name_error is overflowing its stack with this change, although I think it is an NSEC3 validation bug, not a problem with the retry timer.
  • unit tests for retry timer

🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.

## 📋 Pull Request Information **Original PR:** https://github.com/hickory-dns/hickory-dns/pull/3311 **Author:** [@marcus0x62](https://github.com/marcus0x62) **Created:** 10/13/2025 **Status:** ✅ Merged **Merged:** 10/29/2025 **Merged by:** [@marcus0x62](https://github.com/marcus0x62) **Base:** `main` ← **Head:** `recursor_retransmission_policy` --- ### 📝 Commits (5) - [`fa06edf`](https://github.com/hickory-dns/hickory-dns/commit/fa06edf7cb912ac6051ecbffd81002c2500dd7a1) resolver: fix misleading indentation - [`ba4d450`](https://github.com/hickory-dns/hickory-dns/commit/ba4d4506b57ef2b1348f8c786b2e772be91b25a8) proto: introduce retry_interval for unreliable protocols - [`2d99128`](https://github.com/hickory-dns/hickory-dns/commit/2d99128001a5dfc7bc319e3d1c74faa6358ac196) conformance: add better condition detection to packet loss test - [`7e50287`](https://github.com/hickory-dns/hickory-dns/commit/7e502872acca648c4066c6e3092e96c6fdda5630) proto: unit test for DNSSEC validation loop - [`b6d7e24`](https://github.com/hickory-dns/hickory-dns/commit/b6d7e240a552b0306bb63ff50952050261b17143) proto: stop DNSSEC validation cycle in verify_default_rrset ### 📊 Changes **13 files changed** (+513 additions, -103 deletions) <details> <summary>View changed files</summary> 📝 `conformance/Cargo.lock` (+12 -0) 📝 `conformance/conformance-tests/src/resolver/dns/scenarios/packet_loss.rs` (+59 -2) 📝 `conformance/test-server/src/handlers.rs` (+4 -2) 📝 `crates/proto/Cargo.toml` (+2 -2) 📝 `crates/proto/src/dnssec/handle.rs` (+28 -5) 📝 `crates/proto/src/op/dns_request.rs` (+17 -2) 📝 `crates/proto/src/udp/mod.rs` (+8 -0) 📝 `crates/proto/src/udp/udp_client_stream.rs` (+262 -73) 📝 `crates/resolver/src/name_server.rs` (+15 -7) 📝 `crates/resolver/src/name_server_pool.rs` (+11 -4) 📝 `fuzz/Cargo.lock` (+13 -1) 📝 `tests/integration-tests/tests/integration/invalid_nsec3_tests.rs` (+54 -2) 📝 `tests/test-support/src/lib.rs` (+28 -3) </details> ### 📄 Description Addresses #2645 by introducing a retry interval for UdpClientStream. Setting this as a draft for now. - [X] invalid_nsec3_tests::name_error is overflowing its stack with this change, although I think it is an NSEC3 validation bug, not a problem with the retry timer. - [x] unit tests for retry timer --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
kerem 2026-03-16 11:59:41 +03:00
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
starred/hickory-dns#3734
No description provided.