[PR #1635] [MERGED] Parse DS records #2480

Closed
opened 2026-03-16 08:56:00 +03:00 by kerem · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/hickory-dns/hickory-dns/pull/1635
Author: @kmkaplan
Created: 2/14/2022
Status: Merged
Merged: 2/18/2022
Merged by: @bluejekyll

Base: mainHead: parse-ds


📝 Commits (10+)

  • c483c8a trust_dns_client::serialize::txt::parse_rdata::RData::parse(): support parsing DS
  • dd9a4e0 add a DS in the example.com test zone file
  • 1994210 fix client::serialize::txt::Parser::parse_time() to require a number before any unit symbol (smhdw)
  • 2f184ef fix clippy "use of ok_or followed by a function call"
  • 87fd9b3 Only compile DNSSEC capabilities if feature dnssec is specified
  • e409d66 Add some knowledge about more DNSSEC algorithms from the RFC: RSAMD5, DSA and
  • e55db8f Fix typo: it's DS, not CDS.
  • 9abf18a Fix cleanliness: apply cargo-fmt
  • 9a6dc45 Fix tests without features DNSSEC.
  • a17f667 Fix store::file::authority::tests::test_load_zone with --all-features

📊 Changes

9 files changed (+224 additions, -21 deletions)

View changed files

📝 crates/client/src/serialize/txt/parse_rdata.rs (+37 -0)
crates/client/src/serialize/txt/rdata_parsers/ds.rs (+92 -0)
📝 crates/client/src/serialize/txt/rdata_parsers/mod.rs (+2 -0)
📝 crates/client/src/serialize/txt/zone.rs (+24 -15)
📝 crates/proto/src/rr/dnssec/algorithm.rs (+18 -1)
📝 crates/proto/src/rr/dnssec/digest_type.rs (+8 -4)
📝 crates/proto/src/rr/dnssec/supported_algorithm.rs (+1 -1)
📝 crates/server/src/store/file/authority.rs (+6 -0)
tests/test-data/named_test_configs/dnssec/example.com.zone (+36 -0)

📄 Description

Adds support for parsing DS records from zone files.

This requires a "breaking" change: the TTL parser used to accept raw unit letters as valid values. Thus DS was parsed as a 0 second TTL. This PR makes that invalid,


🔄 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/1635 **Author:** [@kmkaplan](https://github.com/kmkaplan) **Created:** 2/14/2022 **Status:** ✅ Merged **Merged:** 2/18/2022 **Merged by:** [@bluejekyll](https://github.com/bluejekyll) **Base:** `main` ← **Head:** `parse-ds` --- ### 📝 Commits (10+) - [`c483c8a`](https://github.com/hickory-dns/hickory-dns/commit/c483c8aff9eb0f650979ff8a5b6fe91b3bdebbe7) trust_dns_client::serialize::txt::parse_rdata::RData::parse(): support parsing DS - [`dd9a4e0`](https://github.com/hickory-dns/hickory-dns/commit/dd9a4e0f780bddf1e8dec46d5ecd480598aea817) add a DS in the example.com test zone file - [`1994210`](https://github.com/hickory-dns/hickory-dns/commit/1994210bb63dddd8a76ad948b87c13785dcf3ffc) fix client::serialize::txt::Parser::parse_time() to require a number before any unit symbol (smhdw) - [`2f184ef`](https://github.com/hickory-dns/hickory-dns/commit/2f184efd6f2dd6711aaf26919a0e26c5eab54415) fix clippy "use of `ok_or` followed by a function call" - [`87fd9b3`](https://github.com/hickory-dns/hickory-dns/commit/87fd9b32c44b7adbd0e46091d0975234b48c3fde) Only compile DNSSEC capabilities if feature dnssec is specified - [`e409d66`](https://github.com/hickory-dns/hickory-dns/commit/e409d66f842547196fd461872544ed7636033379) Add some knowledge about more DNSSEC algorithms from the RFC: RSAMD5, DSA and - [`e55db8f`](https://github.com/hickory-dns/hickory-dns/commit/e55db8f84219592a8870a0f77e74c54a765b71ed) Fix typo: it's DS, not CDS. - [`9abf18a`](https://github.com/hickory-dns/hickory-dns/commit/9abf18a62d7521be79a70b6006cc13a1decfbadf) Fix cleanliness: apply cargo-fmt - [`9a6dc45`](https://github.com/hickory-dns/hickory-dns/commit/9a6dc45113cf8e19d2c858f3d83c021481153e75) Fix tests without features DNSSEC. - [`a17f667`](https://github.com/hickory-dns/hickory-dns/commit/a17f667afdb8be14eb874ba3c73954a67c1e084b) Fix store::file::authority::tests::test_load_zone with --all-features ### 📊 Changes **9 files changed** (+224 additions, -21 deletions) <details> <summary>View changed files</summary> 📝 `crates/client/src/serialize/txt/parse_rdata.rs` (+37 -0) ➕ `crates/client/src/serialize/txt/rdata_parsers/ds.rs` (+92 -0) 📝 `crates/client/src/serialize/txt/rdata_parsers/mod.rs` (+2 -0) 📝 `crates/client/src/serialize/txt/zone.rs` (+24 -15) 📝 `crates/proto/src/rr/dnssec/algorithm.rs` (+18 -1) 📝 `crates/proto/src/rr/dnssec/digest_type.rs` (+8 -4) 📝 `crates/proto/src/rr/dnssec/supported_algorithm.rs` (+1 -1) 📝 `crates/server/src/store/file/authority.rs` (+6 -0) ➕ `tests/test-data/named_test_configs/dnssec/example.com.zone` (+36 -0) </details> ### 📄 Description Adds support for parsing DS records from zone files. This requires a "breaking" change: the TTL parser used to accept raw unit letters as valid values. Thus `DS` was parsed as a 0 second TTL. This PR makes that invalid, --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
kerem 2026-03-16 08:56:00 +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#2480
No description provided.