-use async_std::task;
use log::*;
use crate::Connection;
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)?;
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::*;
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 {
-use async_std::task;
use async_tls::TlsConnector;
use log::*;
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)?;
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 {
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::*;
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 {
})))
} else {
warn!("Could not encrypt connection with TLS from {}", peer_addr);
+ // @otodo close the tcp-stream connection
Poll::Pending
}
} else {