aboutsummaryrefslogtreecommitdiff
path: root/net/src
diff options
context:
space:
mode:
authorhozan23 <hozan23@karyontech.net>2024-06-22 05:21:42 +0200
committerhozan23 <hozan23@karyontech.net>2024-06-22 05:21:42 +0200
commit741a83e1a59a9ed822ce6d1ab1a82d31a1cc854a (patch)
tree4fd02b04967aceed1a59b573f8e0b4677e7a9063 /net/src
parent9aa972dd83a85cec5da71e8e893eb6e07d5db8ca (diff)
net: compile rustls only if tls feature is enabled
Diffstat (limited to 'net/src')
-rw-r--r--net/src/error.rs8
-rw-r--r--net/src/lib.rs3
-rw-r--r--net/src/stream/websocket.rs16
-rw-r--r--net/src/transports/tls.rs8
-rw-r--r--net/src/transports/ws.rs8
5 files changed, 18 insertions, 25 deletions
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<T> =
async_tungstenite::WebSocketStream<async_tungstenite::tokio::TokioAdapter<T>>;
#[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<C> {
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},