[PR #1402] [MERGED] Add new HTTPS and SVCB record types #2293

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

📋 Pull Request Information

Original PR: https://github.com/hickory-dns/hickory-dns/pull/1402
Author: @bluejekyll
Created: 3/7/2021
Status: Merged
Merged: 3/15/2021
Merged by: @bluejekyll

Base: mainHead: https_and_svcb


📝 Commits (5)

  • 518fa23 Add new HTTPS and SVCB record types
  • 2fd9f44 add decoders and encoders for SvcParamValues
  • 8178064 add zone file parsing for SVCB and HTTPS
  • 50dcc93 fix doc-tests for MessageParts
  • d14af60 remove track caller until upgrade to 1.46

📊 Changes

13 files changed (+1774 additions, -35 deletions)

View changed files

📝 copyright.txt (+1 -1)
📝 crates/client/src/error/parse_error.rs (+6 -0)
📝 crates/client/src/serialize/txt/parse_rdata.rs (+2 -0)
📝 crates/client/src/serialize/txt/rdata_parsers/mod.rs (+1 -0)
crates/client/src/serialize/txt/rdata_parsers/svcb.rs (+414 -0)
📝 crates/proto/src/error.rs (+11 -0)
📝 crates/proto/src/op/message.rs (+2 -0)
📝 crates/proto/src/op/mod.rs (+1 -1)
📝 crates/proto/src/rr/rdata/mod.rs (+2 -0)
crates/proto/src/rr/rdata/svcb.rs (+1214 -0)
📝 crates/proto/src/rr/record_data.rs (+73 -16)
📝 crates/proto/src/rr/record_type.rs (+21 -17)
📝 crates/proto/src/serialize/binary/mod.rs (+26 -0)

📄 Description

@briansmith @djc @sayrer @moonshiner

Ok, had some time today, through these record types in.

Some notes, currently this does not validate the SvcbParamValue against the SvcbParamKey type.
Currently this is not supported in the Zone file for the server, but that shouldn't be too hard, so I think I'll leave this in draft until I can do that.

This can be tested with:

$> cargo install --git https://github.com/bluejekyll/trust-dns.git --branch https_and_svcb --bin resolve -- trust-dns-util
$> resolve -t HTTPS crypto.cloudflare.com
crypto.cloudflare.com. 273 IN HTTPS 1 . alpn=h2, ipv4hint=162.159.135.79,162.159.136.79, echconfig="/gkAQwATY2xvdWRmbGFyZS1lc25pLmNvbQAgSiSc2sO3T91QP7ZBkmxa4DBEHReUB0M5UXn3iFQpvW8AIAAEAAEAAQAAAAA=" ipv6hint=2606:4700:7::a29f:874f,2606:4700:7::a29f:884f,

see: https://github.com/MikeBishop/dns-alt-svc

fixes: #1323


🔄 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/1402 **Author:** [@bluejekyll](https://github.com/bluejekyll) **Created:** 3/7/2021 **Status:** ✅ Merged **Merged:** 3/15/2021 **Merged by:** [@bluejekyll](https://github.com/bluejekyll) **Base:** `main` ← **Head:** `https_and_svcb` --- ### 📝 Commits (5) - [`518fa23`](https://github.com/hickory-dns/hickory-dns/commit/518fa23c959fe963f622a47f7bf131b21e8fcdad) Add new HTTPS and SVCB record types - [`2fd9f44`](https://github.com/hickory-dns/hickory-dns/commit/2fd9f443b90b2f5262347c44316f29c99128516d) add decoders and encoders for SvcParamValues - [`8178064`](https://github.com/hickory-dns/hickory-dns/commit/8178064f389ecd0628b658fd1bde6fd0dd66620e) add zone file parsing for SVCB and HTTPS - [`50dcc93`](https://github.com/hickory-dns/hickory-dns/commit/50dcc93797ddec5e4a17299bac33b4f327efc22d) fix doc-tests for MessageParts - [`d14af60`](https://github.com/hickory-dns/hickory-dns/commit/d14af60cbfa595028f584eebbd787eca82567412) remove track caller until upgrade to 1.46 ### 📊 Changes **13 files changed** (+1774 additions, -35 deletions) <details> <summary>View changed files</summary> 📝 `copyright.txt` (+1 -1) 📝 `crates/client/src/error/parse_error.rs` (+6 -0) 📝 `crates/client/src/serialize/txt/parse_rdata.rs` (+2 -0) 📝 `crates/client/src/serialize/txt/rdata_parsers/mod.rs` (+1 -0) ➕ `crates/client/src/serialize/txt/rdata_parsers/svcb.rs` (+414 -0) 📝 `crates/proto/src/error.rs` (+11 -0) 📝 `crates/proto/src/op/message.rs` (+2 -0) 📝 `crates/proto/src/op/mod.rs` (+1 -1) 📝 `crates/proto/src/rr/rdata/mod.rs` (+2 -0) ➕ `crates/proto/src/rr/rdata/svcb.rs` (+1214 -0) 📝 `crates/proto/src/rr/record_data.rs` (+73 -16) 📝 `crates/proto/src/rr/record_type.rs` (+21 -17) 📝 `crates/proto/src/serialize/binary/mod.rs` (+26 -0) </details> ### 📄 Description @briansmith @djc @sayrer @moonshiner Ok, had some time today, through these record types in. ~Some notes, currently this does not validate the `SvcbParamValue` against the `SvcbParamKey` type. Currently this is not supported in the Zone file for the server, but that shouldn't be too hard, so I think I'll leave this in draft until I can do that.~ This can be tested with: ``` $> cargo install --git https://github.com/bluejekyll/trust-dns.git --branch https_and_svcb --bin resolve -- trust-dns-util $> resolve -t HTTPS crypto.cloudflare.com crypto.cloudflare.com. 273 IN HTTPS 1 . alpn=h2, ipv4hint=162.159.135.79,162.159.136.79, echconfig="/gkAQwATY2xvdWRmbGFyZS1lc25pLmNvbQAgSiSc2sO3T91QP7ZBkmxa4DBEHReUB0M5UXn3iFQpvW8AIAAEAAEAAQAAAAA=" ipv6hint=2606:4700:7::a29f:874f,2606:4700:7::a29f:884f, ``` see: https://github.com/MikeBishop/dns-alt-svc fixes: #1323 --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
kerem 2026-03-16 08:45:54 +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#2293
No description provided.