From acdfd7b3e402d70392fac98089589d11f975df2c Mon Sep 17 00:00:00 2001 From: Sachandhan Ganesh Date: Sat, 16 Jan 2021 19:42:50 -0800 Subject: [PATCH] use generic futures-executor in place of async-task --- src/tcp/client.rs | 3 +-- src/tcp/server.rs | 3 +-- src/tls/client.rs | 5 ++--- src/tls/server.rs | 4 ++-- 4 files changed, 6 insertions(+), 9 deletions(-) diff --git a/src/tcp/client.rs b/src/tcp/client.rs index 4c85138..140c00d 100644 --- a/src/tcp/client.rs +++ b/src/tcp/client.rs @@ -1,4 +1,3 @@ -use async_std::task; use log::*; use crate::Connection; @@ -6,7 +5,7 @@ use async_std::net::{TcpStream, ToSocketAddrs}; impl Connection { pub fn tcp_client(ip_addrs: A) -> anyhow::Result { - let stream = task::block_on(TcpStream::connect(&ip_addrs))?; + let stream = futures::executor::block_on(TcpStream::connect(&ip_addrs))?; info!("Established client TCP connection to {}", ip_addrs); stream.set_nodelay(true)?; diff --git a/src/tcp/server.rs b/src/tcp/server.rs index 09c51d1..674227b 100644 --- a/src/tcp/server.rs +++ b/src/tcp/server.rs @@ -1,7 +1,6 @@ use crate::Connection; use async_std::net::{SocketAddr, TcpListener, ToSocketAddrs}; use async_std::pin::Pin; -use async_std::task; use futures::task::{Context, Poll}; use futures::{Stream, StreamExt}; use log::*; @@ -14,7 +13,7 @@ pub struct TcpServer { impl TcpServer { pub fn new(ip_addrs: A) -> anyhow::Result { - let listener = task::block_on(TcpListener::bind(&ip_addrs))?; + let listener = futures::executor::block_on(TcpListener::bind(&ip_addrs))?; info!("Started TCP server at {}", &ip_addrs); Ok(Self { diff --git a/src/tls/client.rs b/src/tls/client.rs index af60056..225c0db 100644 --- a/src/tls/client.rs +++ b/src/tls/client.rs @@ -1,4 +1,3 @@ -use async_std::task; use async_tls::TlsConnector; use log::*; @@ -27,7 +26,7 @@ impl Connection { domain: &str, connector: TlsConnector, ) -> anyhow::Result { - let stream = task::block_on(TcpStream::connect(&ip_addrs))?; + let stream = futures::executor::block_on(TcpStream::connect(&ip_addrs))?; info!("Established client TCP connection to {}", ip_addrs); stream.set_nodelay(true)?; @@ -35,7 +34,7 @@ impl Connection { let peer_addr = stream.peer_addr()?; let encrypted_stream: client::TlsStream = - task::block_on(connector.connect(domain, stream))?; + futures::executor::block_on(connector.connect(domain, stream))?; info!("Completed TLS handshake with {}", peer_addr); Ok(Self::from(TlsConnectionMetadata::Client { diff --git a/src/tls/server.rs b/src/tls/server.rs index 4d92e2e..dde4b16 100644 --- a/src/tls/server.rs +++ b/src/tls/server.rs @@ -3,7 +3,6 @@ use crate::Connection; use async_std::net::*; use async_std::pin::Pin; use async_std::prelude::*; -use async_std::task; use async_tls::TlsAcceptor; use futures::task::{Context, Poll}; use log::*; @@ -20,7 +19,7 @@ impl TlsServer { ip_addrs: A, acceptor: TlsAcceptor, ) -> anyhow::Result { - let listener = task::block_on(TcpListener::bind(ip_addrs))?; + let listener = futures::executor::block_on(TcpListener::bind(ip_addrs))?; info!("Started TLS server at {}", listener.local_addr()?); Ok(Self { @@ -54,6 +53,7 @@ impl Stream for TlsServer { }))) } else { warn!("Could not encrypt connection with TLS from {}", peer_addr); + // @otodo close the tcp-stream connection Poll::Pending } } else { -- 2.44.0