Просмотр исходного кода

net: do some minor cleanup. move transport.rs into transport/ and make p2p.session_* non async functions

x 2 лет назад
Родитель
Сommit
08e5abb90b
3 измененных файлов с 19 добавлено и 29 удалено
  1. 2 2
      bin/lilith/src/main.rs
  2. 11 12
      src/net/p2p.rs
  3. 6 15
      src/net/transport/transport.rs

+ 2 - 2
bin/lilith/src/main.rs

@@ -161,8 +161,8 @@ impl Lilith {
                 let p2p_ = p2p.clone();
                 let ex_ = ex.clone();
                 tasks.push(async move {
-                    let session_out = p2p_.session_outbound().await;
-                    let session_weak = Arc::downgrade(&p2p_.session_outbound().await);
+                    let session_out = p2p_.session_outbound();
+                    let session_weak = Arc::downgrade(&session_out);
 
                     let connector = Connector::new(p2p_.settings(), session_weak);
                     debug!(target: "lilith", "Connecting to {}", host);

+ 11 - 12
src/net/p2p.rs

@@ -129,19 +129,18 @@ impl P2p {
 
         // First attempt any set manual connections
         for peer in &self.settings.peers {
-            self.session_manual().await.connect(peer.clone()).await;
+            self.session_manual().connect(peer.clone()).await;
         }
 
         // Start the inbound session
-        let inbound = self.session_inbound().await;
-        if let Err(err) = inbound.start().await {
+        if let Err(err) = self.session_inbound().start().await {
             error!(target: "net::p2p::start()", "Failed to start inbound session!: {}", err);
-            self.session_manual().await.stop().await;
+            self.session_manual().stop().await;
             return Err(err)
         }
 
         // Start the outbound session
-        self.session_outbound().await.start().await;
+        self.session_outbound().start().await;
 
         info!(target: "net::p2p::start()", "[P2P] P2P subsystem started");
         Ok(())
@@ -164,9 +163,9 @@ impl P2p {
     /// Stop the running P2P subsystem
     pub async fn stop(&self) {
         // Stop the sessions
-        self.session_manual().await.stop().await;
-        self.session_inbound().await.stop().await;
-        self.session_outbound().await.stop().await;
+        self.session_manual().stop().await;
+        self.session_inbound().stop().await;
+        self.session_outbound().stop().await;
     }
 
     /// Broadcasts a message concurrently across all active channels.
@@ -271,17 +270,17 @@ impl P2p {
     }
 
     /// Get pointer to manual session
-    pub async fn session_manual(&self) -> ManualSessionPtr {
+    pub fn session_manual(&self) -> ManualSessionPtr {
         self.session_manual.clone()
     }
 
     /// Get pointer to inbound session
-    pub async fn session_inbound(&self) -> InboundSessionPtr {
+    pub fn session_inbound(&self) -> InboundSessionPtr {
         self.session_inbound.clone()
     }
 
     /// Get pointer to outbound session
-    pub async fn session_outbound(&self) -> OutboundSessionPtr {
+    pub fn session_outbound(&self) -> OutboundSessionPtr {
         self.session_outbound.clone()
     }
 
@@ -303,7 +302,7 @@ impl P2p {
     }
 
     /// Send a dnet notification over the subscriber
-    pub async fn dnet_notify(&self, event: DnetEvent) {
+    pub(super) async fn dnet_notify(&self, event: DnetEvent) {
         self.dnet_subscriber.notify(event).await;
     }
 }

+ 6 - 15
src/net/transport.rs → src/net/transport/transport.rs

@@ -24,24 +24,15 @@ use url::Url;
 
 use crate::{Error, Result};
 
-/// TLS Upgrade Mechanism
-pub(crate) mod tls;
-
+#[cfg(feature = "p2p-nym")]
+use super::nym;
 #[cfg(feature = "p2p-tcp")]
-/// TCP Transport
-pub(crate) mod tcp;
-
+use super::tcp;
+use super::tls;
 #[cfg(feature = "p2p-tor")]
-/// Tor transport
-pub(crate) mod tor;
-
-#[cfg(feature = "p2p-nym")]
-/// Nym transport
-pub(crate) mod nym;
-
+use super::tor;
 #[cfg(feature = "p2p-unix")]
-/// Unix socket transport
-pub(crate) mod unix;
+use super::unix;
 
 /// Dialer variants
 #[derive(Debug, Clone)]