فهرست منبع

darkpulse: clippy cleanups.

parazyd 4 سال پیش
والد
کامیت
3edd649d82
6فایلهای تغییر یافته به همراه40 افزوده شده و 43 حذف شده
  1. 2 2
      src/darkpulse/aes.rs
  2. 2 2
      src/darkpulse/channel.rs
  3. 4 4
      src/darkpulse/dbsql.rs
  4. 26 29
      src/darkpulse/net/protocol_slab.rs
  5. 4 4
      src/darkpulse/slabs_manager.rs
  6. 2 2
      src/darkpulse/utility.rs

+ 2 - 2
src/darkpulse/aes.rs

@@ -24,7 +24,7 @@ pub fn aes_encrypt(
 pub fn aes_decrypt(
     shared_secret: &AesKey,
     nonce: &[u8; 12],
-    ciphertext: &Ciphertext,
+    ciphertext: Ciphertext,
 ) -> Option<Plaintext> {
     // Rust is gay, I need to convert to 'GenericArray' whatever the fuck that is...
     let key = GenericArray::from_slice(&shared_secret[..]);
@@ -47,7 +47,7 @@ fn test_aes() {
 
     let ciphertext = aes_encrypt(&channel_secret, &nonce, b"plaintext message").unwrap();
 
-    let plaintext = aes_decrypt(&channel_secret, &nonce, &ciphertext).unwrap();
+    let plaintext = aes_decrypt(&channel_secret, &nonce, ciphertext).unwrap();
     // OK it works!
     assert_eq!(&plaintext, b"plaintext message");
 }

+ 2 - 2
src/darkpulse/channel.rs

@@ -29,9 +29,9 @@ impl Channel {
     }
 
     pub fn gen_new_with_addr(channel_name: String, channel_address: String) -> Result<Channel> {
-        let mut decoded = bs58::decode(channel_address.clone()).into_vec()?;
+        let decoded = bs58::decode(channel_address.clone()).into_vec()?;
         let mut channel_secret: [u8; 32] = [0; 32];
-        channel_secret.copy_from_slice(&mut decoded[4..36]);
+        channel_secret.copy_from_slice(&decoded[4..36]);
         Ok(Channel { channel_secret, channel_name, address: channel_address, id: None })
     }
 

+ 4 - 4
src/darkpulse/dbsql.rs

@@ -34,7 +34,7 @@ impl Dbsql {
         Ok(())
     }
 
-    pub fn add_username(&self, username: &String) -> Result<()> {
+    pub fn add_username(&self, username: &str) -> Result<()> {
         self.connection
             .execute("INSERT OR IGNORE INTO node (username) VALUES (?1)", params![username])?;
         Ok(())
@@ -76,7 +76,7 @@ impl Dbsql {
         Ok(())
     }
 
-    pub fn delete_channel(&self, channel_name: &String) -> Result<()> {
+    pub fn delete_channel(&self, channel_name: &str) -> Result<()> {
         self.connection
             .execute("DELETE FROM channel WHERE channel_name = (?1)", params![channel_name,])?;
         Ok(())
@@ -141,12 +141,12 @@ impl Dbsql {
     pub fn get_username(&self) -> Result<String> {
         let mut username = String::new();
         let mut stmt3 = self.connection.prepare("SELECT * FROM node")?;
-        let mut uname_iter = stmt3.query_map(params![], |row| {
+        let uname_iter = stmt3.query_map(params![], |row| {
             let username: String = row.get(1)?;
             Ok(username)
         })?;
 
-        for name in uname_iter.next() {
+        for name in uname_iter {
             username = name?;
         }
 

+ 26 - 29
src/darkpulse/net/protocol_slab.rs

@@ -137,40 +137,37 @@ impl ProtocolSlab {
             };
 
             for channel in channels.iter() {
-                match aes_decrypt(
+                if let Some(plaintext) = aes_decrypt(
                     &channel.get_channel_secret(),
                     &slab_msg.nonce,
-                    &slab_msg.ciphertext,
+                    slab_msg.ciphertext.clone(),
                 ) {
-                    Some(plaintext) => {
-                        self.slabman
-                            .lock()
-                            .await
-                            .add_new_slab(slab.clone())
-                            .await
-                            .expect("error during adding new slab to database");
-
-                        let des_plaintext: ControlMessage = deserialize(&plaintext[..])
-                            .expect("error during deserializing the message");
-
-                        match des_plaintext.control {
-                            ControlCommand::Join => {
-                                info!("{} joined the group", des_plaintext.payload.nickname);
-                            }
-                            ControlCommand::Leave => {
-                                info!("{} left the group", des_plaintext.payload.nickname);
-                            }
-                            ControlCommand::Message => {
-                                info!(
-                                    "{} -> {}: {}",
-                                    des_plaintext.payload.timestamp,
-                                    des_plaintext.payload.nickname,
-                                    des_plaintext.payload.text
-                                );
-                            }
+                    self.slabman
+                        .lock()
+                        .await
+                        .add_new_slab(slab.clone())
+                        .await
+                        .expect("error during adding new slab to database");
+
+                    let des_plaintext: ControlMessage = deserialize(&plaintext[..])
+                        .expect("error during deserializing the message");
+
+                    match des_plaintext.control {
+                        ControlCommand::Join => {
+                            info!("{} joined the group", des_plaintext.payload.nickname);
+                        }
+                        ControlCommand::Leave => {
+                            info!("{} left the group", des_plaintext.payload.nickname);
+                        }
+                        ControlCommand::Message => {
+                            info!(
+                                "{} -> {}: {}",
+                                des_plaintext.payload.timestamp,
+                                des_plaintext.payload.nickname,
+                                des_plaintext.payload.text
+                            );
                         }
                     }
-                    None => {}
                 }
             }
         }

+ 4 - 4
src/darkpulse/slabs_manager.rs

@@ -6,7 +6,7 @@ use sha2::{Digest, Sha256};
 use super::{aes::Ciphertext, channel::Channel, dbsql, net::messages::SlabMessage, CiphertextHash};
 use crate::Result;
 
-pub fn cipher_hash(ciphertext: &Ciphertext) -> CiphertextHash {
+pub fn cipher_hash(ciphertext: Ciphertext) -> CiphertextHash {
     let mut cipher_hash = [0u8; 32];
     let mut hasher = Sha256::new();
     for chunk in ciphertext.chunks(32) {
@@ -18,7 +18,7 @@ pub fn cipher_hash(ciphertext: &Ciphertext) -> CiphertextHash {
 
 impl SlabMessage {
     pub fn cipher_hash(&self) -> CiphertextHash {
-        cipher_hash(&self.ciphertext)
+        cipher_hash(self.ciphertext.clone())
     }
 }
 
@@ -95,12 +95,12 @@ impl SlabsManager {
         Ok(())
     }
 
-    pub fn delete_channel(&mut self, channel_id: &String) -> Result<()> {
+    pub fn delete_channel(&mut self, channel_id: &str) -> Result<()> {
         self.db.delete_channel(channel_id)?;
         Ok(())
     }
 
-    pub fn add_username(&mut self, username: &String) -> Result<()> {
+    pub fn add_username(&mut self, username: &str) -> Result<()> {
         self.db.add_username(username)?;
         Ok(())
     }

+ 2 - 2
src/darkpulse/utility.rs

@@ -34,10 +34,10 @@ pub fn get_current_time() -> u64 {
     since_the_epoch.as_secs() * 1000 + since_the_epoch.subsec_nanos() as u64 / 1_000_000
 }
 
-pub fn save_to_addrs_store(stored_addrs: &Vec<SocketAddr>) -> Result<()> {
+pub fn save_to_addrs_store(stored_addrs: &[SocketAddr]) -> Result<()> {
     let path = default_config_dir()?.join("addrs.add");
     let mut writer = OpenOptions::new().write(true).create(true).open(path)?;
-    let buffer = serialize(stored_addrs);
+    let buffer = serialize(&stored_addrs.to_vec());
     writer.write_all(&buffer)?;
     Ok(())
 }