]> git.lizzy.rs Git - connect-rs.git/commitdiff
use generic futures-executor in place of async-task
authorSachandhan Ganesh <sachan.ganesh@gmail.com>
Sun, 17 Jan 2021 03:42:50 +0000 (19:42 -0800)
committerSachandhan Ganesh <sachan.ganesh@gmail.com>
Sun, 17 Jan 2021 03:42:50 +0000 (19:42 -0800)
src/tcp/client.rs
src/tcp/server.rs
src/tls/client.rs
src/tls/server.rs

index 4c85138af01d95bfb13c629fc2163c529821786a..140c00d4fff8c63058323a20c825c5e4d07f165e 100644 (file)
@@ -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<A: ToSocketAddrs + std::fmt::Display>(ip_addrs: A) -> anyhow::Result<Self> {
-        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)?;
index 09c51d1f03f9739787dff8c3a676a375e9a4891a..674227b6350c9a921b2deebd423929d329d8f6ea 100644 (file)
@@ -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<A: ToSocketAddrs + std::fmt::Display>(ip_addrs: A) -> anyhow::Result<Self> {
-        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 {
index af60056555cba31784bf71d5a7013470b2b888f4..225c0db6536b1897851eb73105160094db59e933 100644 (file)
@@ -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<Self> {
-        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<TcpStream> =
-            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 {
index 4d92e2ee109bab8606ce75b34475e051ff643b87..dde4b16833dd9eb9e50497be16443ba9d102ec39 100644 (file)
@@ -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<Self> {
-        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 {