From 741a83e1a59a9ed822ce6d1ab1a82d31a1cc854a Mon Sep 17 00:00:00 2001 From: hozan23 Date: Sat, 22 Jun 2024 05:21:42 +0200 Subject: net: compile rustls only if tls feature is enabled --- net/src/error.rs | 8 ++------ net/src/lib.rs | 3 +++ net/src/stream/websocket.rs | 16 +++++++--------- net/src/transports/tls.rs | 8 +++----- net/src/transports/ws.rs | 8 +++----- 5 files changed, 18 insertions(+), 25 deletions(-) (limited to 'net/src') diff --git a/net/src/error.rs b/net/src/error.rs index 102a343..3656128 100644 --- a/net/src/error.rs +++ b/net/src/error.rs @@ -41,13 +41,9 @@ pub enum Error { #[error("Ws Error: {0}")] WsError(#[from] async_tungstenite::tungstenite::Error), - #[cfg(feature = "smol")] - #[error("Tls Error: {0}")] - Rustls(#[from] futures_rustls::rustls::Error), - - #[cfg(feature = "tokio")] + #[cfg(feature = "tls")] #[error("Tls Error: {0}")] - Rustls(#[from] tokio_rustls::rustls::Error), + Rustls(#[from] karyon_async_rustls::rustls::Error), #[cfg(feature = "tls")] #[error("Invalid DNS Name: {0}")] diff --git a/net/src/lib.rs b/net/src/lib.rs index cd5fc8b..975331a 100644 --- a/net/src/lib.rs +++ b/net/src/lib.rs @@ -28,6 +28,9 @@ pub use transports::udp; #[cfg(all(feature = "unix", target_family = "unix"))] pub use transports::unix; +#[cfg(feature = "tls")] +pub use karyon_async_rustls as async_rustls; + /// Represents karyon's Net Error pub use error::Error; diff --git a/net/src/stream/websocket.rs b/net/src/stream/websocket.rs index eb4de21..9f4da46 100644 --- a/net/src/stream/websocket.rs +++ b/net/src/stream/websocket.rs @@ -10,21 +10,19 @@ use futures_util::{ }; use pin_project_lite::pin_project; -#[cfg(all(feature = "smol", feature = "tls"))] -use futures_rustls::TlsStream; -#[cfg(all(feature = "tokio", feature = "tls"))] -use tokio_rustls::TlsStream; - -use karyon_core::async_runtime::net::TcpStream; - -use crate::{codec::WebSocketCodec, Error, Result}; - #[cfg(feature = "tokio")] type WebSocketStream = async_tungstenite::WebSocketStream>; #[cfg(feature = "smol")] use async_tungstenite::WebSocketStream; +use karyon_core::async_runtime::net::TcpStream; + +#[cfg(feature = "tls")] +use crate::async_rustls::TlsStream; + +use crate::{codec::WebSocketCodec, Error, Result}; + pub struct WsStream { inner: InnerWSConn, codec: C, diff --git a/net/src/transports/tls.rs b/net/src/transports/tls.rs index c972f63..d282ad2 100644 --- a/net/src/transports/tls.rs +++ b/net/src/transports/tls.rs @@ -4,17 +4,15 @@ use async_trait::async_trait; use futures_util::SinkExt; use rustls_pki_types as pki_types; -#[cfg(feature = "smol")] -use futures_rustls::{rustls, TlsAcceptor, TlsConnector, TlsStream}; -#[cfg(feature = "tokio")] -use tokio_rustls::{rustls, TlsAcceptor, TlsConnector, TlsStream}; - use karyon_core::async_runtime::{ io::{split, ReadHalf, WriteHalf}, lock::Mutex, net::{TcpListener, TcpStream}, }; +#[cfg(feature = "tls")] +use crate::async_rustls::{rustls, TlsAcceptor, TlsConnector, TlsStream}; + use crate::{ codec::Codec, connection::{Conn, Connection, ToConn}, diff --git a/net/src/transports/ws.rs b/net/src/transports/ws.rs index f2fde90..eb339ca 100644 --- a/net/src/transports/ws.rs +++ b/net/src/transports/ws.rs @@ -10,16 +10,14 @@ use rustls_pki_types as pki_types; #[cfg(feature = "tokio")] use async_tungstenite::tokio as async_tungstenite; -#[cfg(all(feature = "smol", feature = "tls"))] -use futures_rustls::{rustls, TlsAcceptor, TlsConnector}; -#[cfg(all(feature = "tokio", feature = "tls"))] -use tokio_rustls::{rustls, TlsAcceptor, TlsConnector}; - use karyon_core::async_runtime::{ lock::Mutex, net::{TcpListener, TcpStream}, }; +#[cfg(feature = "tls")] +use crate::async_rustls::{rustls, TlsAcceptor, TlsConnector}; + use crate::{ codec::WebSocketCodec, connection::{Conn, Connection, ToConn}, -- cgit v1.2.3