[PR #1248] [MERGED] Tcp stream #2128

Closed
opened 2026-03-16 06:06:31 +03:00 by kerem · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/hickory-dns/hickory-dns/pull/1248
Author: @djc
Created: 10/14/2020
Status: Merged
Merged: 10/16/2020
Merged by: @bluejekyll

Base: mainHead: tcp-stream


📝 Commits (10+)

  • d825363 explicitly make Connect implement the Transport
  • b2315a2 move more bounds into Connect trait
  • e96dc57 associate Time type with Connect trait
  • 2a3026a define DnsTcpStream supertrait for Connect
  • adc3944 consistently use DnsTcpStream bounds for TCP stream types
  • 52df909 merge impl blocks for TcpStream
  • 61b09e3 attach associated type Time to DnsClientStream trait
  • 92913c5 attach associated type Time to UdpSocket trait
  • c3aaeac remove TE type argument from DnsRequestSender::send_message()
  • 709b221 remove unused Context argument from DnsRequestSender::send_message()

📊 Changes

25 files changed (+216 additions, -286 deletions)

View changed files

📝 CHANGELOG.md (+5 -0)
📝 bin/benches/comparison_benches.rs (+3 -3)
📝 bin/tests/named_test_rsa_dnssec.rs (+1 -1)
📝 bin/tests/named_tests.rs (+12 -25)
📝 crates/async-std-resolver/src/net.rs (+10 -4)
📝 crates/client/src/https_client_connection.rs (+1 -1)
📝 crates/client/src/tcp/tcp_client_connection.rs (+4 -4)
📝 crates/https/src/https_client_stream.rs (+21 -36)
📝 crates/proto/src/multicast/mdns_client_stream.rs (+3 -1)
📝 crates/proto/src/tcp/mod.rs (+1 -1)
📝 crates/proto/src/tcp/tcp_client_stream.rs (+31 -20)
📝 crates/proto/src/tcp/tcp_stream.rs (+59 -64)
📝 crates/proto/src/tests/tcp.rs (+5 -13)
📝 crates/proto/src/tests/udp.rs (+2 -4)
📝 crates/proto/src/udp/udp_client_stream.rs (+2 -6)
📝 crates/proto/src/udp/udp_stream.rs (+6 -0)
📝 crates/proto/src/xfer/dns_exchange.rs (+1 -3)
📝 crates/proto/src/xfer/dns_multiplexer.rs (+2 -6)
📝 crates/proto/src/xfer/mod.rs (+4 -5)
📝 crates/resolver/src/async_resolver.rs (+20 -57)

...and 5 more files

📄 Description

The DnsTcpStream name isn't great, but I wasn't sure what else could be used... Maybe flip the naming for DnsTcpStream and TcpStream? Any other suggestions?

An further direction might be to move the RuntimeProvider trait from resolver into proto and use it to govern all this stuff directly.


🔄 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/1248 **Author:** [@djc](https://github.com/djc) **Created:** 10/14/2020 **Status:** ✅ Merged **Merged:** 10/16/2020 **Merged by:** [@bluejekyll](https://github.com/bluejekyll) **Base:** `main` ← **Head:** `tcp-stream` --- ### 📝 Commits (10+) - [`d825363`](https://github.com/hickory-dns/hickory-dns/commit/d825363c449e7f2206c81c43a664f2c8c51207e8) explicitly make Connect implement the Transport - [`b2315a2`](https://github.com/hickory-dns/hickory-dns/commit/b2315a2e659e75436be0764e65e0a04c751b3778) move more bounds into Connect trait - [`e96dc57`](https://github.com/hickory-dns/hickory-dns/commit/e96dc5779b7b248978b3ad25d521a06b3e0a2930) associate Time type with Connect trait - [`2a3026a`](https://github.com/hickory-dns/hickory-dns/commit/2a3026a655d922dd933d09aa2dbd70b8ea96d987) define DnsTcpStream supertrait for Connect - [`adc3944`](https://github.com/hickory-dns/hickory-dns/commit/adc3944895cf521cea3385c2d7354c9a1b41f99a) consistently use DnsTcpStream bounds for TCP stream types - [`52df909`](https://github.com/hickory-dns/hickory-dns/commit/52df909ebe45ed2ff17ca25929a219fef0545c0f) merge impl blocks for TcpStream - [`61b09e3`](https://github.com/hickory-dns/hickory-dns/commit/61b09e3c285cd5f517740ad4f29a32511391dc04) attach associated type Time to DnsClientStream trait - [`92913c5`](https://github.com/hickory-dns/hickory-dns/commit/92913c590775a40c4d603d2ab95b78cd5d04a18e) attach associated type Time to UdpSocket trait - [`c3aaeac`](https://github.com/hickory-dns/hickory-dns/commit/c3aaeac9bea5c538351d8401c79d32601aa3e2e6) remove TE type argument from DnsRequestSender::send_message() - [`709b221`](https://github.com/hickory-dns/hickory-dns/commit/709b2217ba24943c1bd3288added38c6eb0d3137) remove unused Context argument from DnsRequestSender::send_message() ### 📊 Changes **25 files changed** (+216 additions, -286 deletions) <details> <summary>View changed files</summary> 📝 `CHANGELOG.md` (+5 -0) 📝 `bin/benches/comparison_benches.rs` (+3 -3) 📝 `bin/tests/named_test_rsa_dnssec.rs` (+1 -1) 📝 `bin/tests/named_tests.rs` (+12 -25) 📝 `crates/async-std-resolver/src/net.rs` (+10 -4) 📝 `crates/client/src/https_client_connection.rs` (+1 -1) 📝 `crates/client/src/tcp/tcp_client_connection.rs` (+4 -4) 📝 `crates/https/src/https_client_stream.rs` (+21 -36) 📝 `crates/proto/src/multicast/mdns_client_stream.rs` (+3 -1) 📝 `crates/proto/src/tcp/mod.rs` (+1 -1) 📝 `crates/proto/src/tcp/tcp_client_stream.rs` (+31 -20) 📝 `crates/proto/src/tcp/tcp_stream.rs` (+59 -64) 📝 `crates/proto/src/tests/tcp.rs` (+5 -13) 📝 `crates/proto/src/tests/udp.rs` (+2 -4) 📝 `crates/proto/src/udp/udp_client_stream.rs` (+2 -6) 📝 `crates/proto/src/udp/udp_stream.rs` (+6 -0) 📝 `crates/proto/src/xfer/dns_exchange.rs` (+1 -3) 📝 `crates/proto/src/xfer/dns_multiplexer.rs` (+2 -6) 📝 `crates/proto/src/xfer/mod.rs` (+4 -5) 📝 `crates/resolver/src/async_resolver.rs` (+20 -57) _...and 5 more files_ </details> ### 📄 Description The `DnsTcpStream` name isn't great, but I wasn't sure what else could be used... Maybe flip the naming for `DnsTcpStream` and `TcpStream`? Any other suggestions? An further direction might be to move the `RuntimeProvider` trait from resolver into proto and use it to govern all this stuff directly. --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
kerem 2026-03-16 06:06:31 +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#2128
No description provided.