[PR #427] [MERGED] Port to tokio-udp #1435

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

📋 Pull Request Information

Original PR: https://github.com/hickory-dns/hickory-dns/pull/427
Author: @Keruspe
Created: 4/25/2018
Status: Merged
Merged: 4/25/2018
Merged by: @bluejekyll

Base: masterHead: tokio-udp


📝 Commits (4)

  • 1467299 port to tokio-udp
  • 80ae50b make ClientConnection use a tokio_reactor::Handle
  • f77b1a7 only require a tokio_reaction::Handle for Mdns
  • 6fa75fa Merge branch 'master' into tokio-udp

📊 Changes

28 files changed (+106 additions, -99 deletions)

View changed files

📝 Cargo.lock (+5 -0)
📝 client/Cargo.toml (+1 -0)
📝 client/src/client/client.rs (+26 -2)
📝 client/src/client/client_connection.rs (+0 -2)
📝 client/src/lib.rs (+1 -0)
📝 client/src/multicast/mdns_client_connection.rs (+7 -8)
📝 client/src/tcp/tcp_client_connection.rs (+0 -2)
📝 client/src/udp/udp_client_connection.rs (+1 -3)
📝 integration-tests/Cargo.toml (+1 -0)
📝 integration-tests/src/lib.rs (+0 -2)
📝 integration-tests/src/tls_client_connection.rs (+0 -2)
📝 integration-tests/tests/client_future_tests.rs (+3 -3)
📝 integration-tests/tests/client_tests.rs (+0 -2)
📝 integration-tests/tests/mdns_tests.rs (+3 -3)
📝 integration-tests/tests/secure_client_handle_tests.rs (+1 -1)
📝 integration-tests/tests/server_future_tests.rs (+3 -1)
📝 proto/Cargo.toml (+2 -0)
📝 proto/src/lib.rs (+2 -0)
📝 proto/src/multicast/mdns_client_stream.rs (+1 -1)
📝 proto/src/multicast/mdns_stream.rs (+17 -19)

...and 8 more files

📄 Description

Part of #385, Port to tokio.

In the mdns part, some socket tuning is done using socket2 which is not possible using std::net::UdpSocket (which is used by mio::UdpSocket, which is used by tokio_udp::UdpSocket) so I had to keep the UdpSocket::from_std which requires a tokio_reactor::Handle.
This is the only usage left of Handle from the ClientConnection trait. All other implementors just ignore the Handle.
I'm wondering if we should make a special case for mdns so that we can drop the Handle from ClientConnection?


🔄 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/427 **Author:** [@Keruspe](https://github.com/Keruspe) **Created:** 4/25/2018 **Status:** ✅ Merged **Merged:** 4/25/2018 **Merged by:** [@bluejekyll](https://github.com/bluejekyll) **Base:** `master` ← **Head:** `tokio-udp` --- ### 📝 Commits (4) - [`1467299`](https://github.com/hickory-dns/hickory-dns/commit/14672995ed0cc5994a819238c0f3c88d141cd8d2) port to tokio-udp - [`80ae50b`](https://github.com/hickory-dns/hickory-dns/commit/80ae50ba21664dabad948c75656cf788cdba510c) make ClientConnection use a tokio_reactor::Handle - [`f77b1a7`](https://github.com/hickory-dns/hickory-dns/commit/f77b1a79e04da1389329628fcbc5bcf5832b8614) only require a tokio_reaction::Handle for Mdns - [`6fa75fa`](https://github.com/hickory-dns/hickory-dns/commit/6fa75fa8e3f8520951b006720b0661f486752550) Merge branch 'master' into tokio-udp ### 📊 Changes **28 files changed** (+106 additions, -99 deletions) <details> <summary>View changed files</summary> 📝 `Cargo.lock` (+5 -0) 📝 `client/Cargo.toml` (+1 -0) 📝 `client/src/client/client.rs` (+26 -2) 📝 `client/src/client/client_connection.rs` (+0 -2) 📝 `client/src/lib.rs` (+1 -0) 📝 `client/src/multicast/mdns_client_connection.rs` (+7 -8) 📝 `client/src/tcp/tcp_client_connection.rs` (+0 -2) 📝 `client/src/udp/udp_client_connection.rs` (+1 -3) 📝 `integration-tests/Cargo.toml` (+1 -0) 📝 `integration-tests/src/lib.rs` (+0 -2) 📝 `integration-tests/src/tls_client_connection.rs` (+0 -2) 📝 `integration-tests/tests/client_future_tests.rs` (+3 -3) 📝 `integration-tests/tests/client_tests.rs` (+0 -2) 📝 `integration-tests/tests/mdns_tests.rs` (+3 -3) 📝 `integration-tests/tests/secure_client_handle_tests.rs` (+1 -1) 📝 `integration-tests/tests/server_future_tests.rs` (+3 -1) 📝 `proto/Cargo.toml` (+2 -0) 📝 `proto/src/lib.rs` (+2 -0) 📝 `proto/src/multicast/mdns_client_stream.rs` (+1 -1) 📝 `proto/src/multicast/mdns_stream.rs` (+17 -19) _...and 8 more files_ </details> ### 📄 Description Part of #385, Port to tokio. In the mdns part, some socket tuning is done using socket2 which is not possible using std::net::UdpSocket (which is used by mio::UdpSocket, which is used by tokio_udp::UdpSocket) so I had to keep the UdpSocket::from_std which requires a tokio_reactor::Handle. This is the only usage left of Handle from the ClientConnection trait. All other implementors just ignore the Handle. I'm wondering if we should make a special case for mdns so that we can drop the Handle from ClientConnection? --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
kerem 2026-03-16 02:06:13 +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#1435
No description provided.