]> git.ipfire.org Git - thirdparty/suricata.git/commitdiff
rust/clippy: fix lint: manual_find
authorJason Ish <jason.ish@oisf.net>
Tue, 29 Nov 2022 02:06:19 +0000 (20:06 -0600)
committerVictor Julien <vjulien@oisf.net>
Tue, 6 Dec 2022 13:10:11 +0000 (14:10 +0100)
These get_tx methods look like ideal candidates for generic and/or
derived methods.

rust/src/applayertemplate/template.rs
rust/src/dhcp/dhcp.rs
rust/src/ike/ike.rs
rust/src/lib.rs
rust/src/modbus/modbus.rs
rust/src/mqtt/mqtt.rs
rust/src/pgsql/pgsql.rs
rust/src/rfb/rfb.rs
rust/src/telnet/telnet.rs

index 14ea6ff7ab90f66193ded0103c233540dc03ed3b..acc6c26c37fa70755e0a46d08393c5399fd209ba 100644 (file)
@@ -103,12 +103,7 @@ impl TemplateState {
     }
 
     pub fn get_tx(&mut self, tx_id: u64) -> Option<&TemplateTransaction> {
-        for tx in &mut self.transactions {
-            if tx.tx_id == tx_id + 1 {
-                return Some(tx);
-            }
-        }
-        return None;
+        self.transactions.iter().find(|tx| tx.tx_id == tx_id + 1)
     }
 
     fn new_tx(&mut self) -> TemplateTransaction {
@@ -119,12 +114,7 @@ impl TemplateState {
     }
 
     fn find_request(&mut self) -> Option<&mut TemplateTransaction> {
-        for tx in &mut self.transactions {
-            if tx.response.is_none() {
-                return Some(tx);
-            }
-        }
-        None
+        self.transactions.iter_mut().find(|tx| tx.response.is_none())
     }
 
     fn parse_request(&mut self, input: &[u8]) -> AppLayerResult {
index 48d737584dd4cdfdd5fb471aa76aae168be7a509..66fe09ea409a8f83ea8b4f5ed9260d3a8792ab98 100644 (file)
@@ -148,12 +148,7 @@ impl DHCPState {
     }
 
     pub fn get_tx(&mut self, tx_id: u64) -> Option<&DHCPTransaction> {
-        for tx in &mut self.transactions {
-            if tx.tx_id == tx_id + 1 {
-                return Some(tx);
-            }
-        }
-        return None;
+        self.transactions.iter().find(|tx| tx.tx_id == tx_id + 1)
     }
 
     fn free_tx(&mut self, tx_id: u64) {
index 6ed1896d785a13681b45a86103d4b165c80d0daf..e715fa7bf9c9304f4f24c162743206b98a71955e 100644 (file)
@@ -167,12 +167,7 @@ impl IKEState {
     }
 
     pub fn get_tx(&mut self, tx_id: u64) -> Option<&mut IKETransaction> {
-        for tx in &mut self.transactions {
-            if tx.tx_id == tx_id + 1 {
-                return Some(tx);
-            }
-        }
-        return None;
+        self.transactions.iter_mut().find(|tx| tx.tx_id == tx_id + 1)
     }
 
     pub fn new_tx(&mut self) -> IKETransaction {
index f8c4bf3fc8f38b77fd5e9c6fcd35a480652ffe93..a9bff564368fde942c627c91c437acdae37230fd 100644 (file)
@@ -27,7 +27,6 @@
 #![allow(clippy::too_many_arguments)]
 
 // To be fixed, but remove the noise for now.
-#![allow(clippy::manual_find)]
 #![allow(clippy::match_like_matches_macro)]
 #![allow(clippy::module_inception)]
 #![allow(clippy::result_unit_err)]
index 3c6a699fb6d723637f24a1f4aeaa8e38058415b7..79da3457128a4f7a209e6d9c80f978fa0d758bd3 100644 (file)
@@ -113,12 +113,7 @@ impl ModbusState {
     }
 
     pub fn get_tx(&mut self, tx_id: u64) -> Option<&mut ModbusTransaction> {
-        for tx in &mut self.transactions {
-            if tx.id == tx_id + 1 {
-                return Some(tx);
-            }
-        }
-        None
+        self.transactions.iter_mut().find(|tx| tx.id == tx_id + 1)
     }
 
     /// Searches the requests in order to find one matching the given response. Returns the matching
index 2e7b47fb8f8b019f0ce387e03b0699e5370de015..d771d86ef484db829fd1ec30aac127b64b565f14 100644 (file)
@@ -158,12 +158,7 @@ impl MQTTState {
     }
 
     pub fn get_tx(&mut self, tx_id: u64) -> Option<&MQTTTransaction> {
-        for tx in &mut self.transactions {
-            if tx.tx_id == tx_id + 1 {
-                return Some(tx);
-            }
-        }
-        return None;
+        self.transactions.iter().find(|tx| tx.tx_id == tx_id + 1)
     }
 
     pub fn get_tx_by_pkt_id(&mut self, pkt_id: u32) -> Option<&mut MQTTTransaction> {
index 8db911330f3b392987cc0d88d5328ac86cc83044..63da68b56f8c17741007451a5853e36bfe3d6ca7 100644 (file)
@@ -187,12 +187,7 @@ impl PgsqlState {
     }
 
     pub fn get_tx(&mut self, tx_id: u64) -> Option<&PgsqlTransaction> {
-        for tx in &mut self.transactions {
-            if tx.tx_id == tx_id + 1 {
-                return Some(tx);
-            }
-        }
-        return None;
+        self.transactions.iter().find(|tx| tx.tx_id == tx_id + 1)
     }
 
     fn new_tx(&mut self) -> PgsqlTransaction {
index ba5bdca8b1e70aa937c23fd0440c88dc7c65b882..e956aad893f85e6f017931cb8b3a5cd1ad17c3d9 100644 (file)
@@ -136,12 +136,7 @@ impl RFBState {
     }
 
     pub fn get_tx(&mut self, tx_id: u64) -> Option<&RFBTransaction> {
-        for tx in &mut self.transactions {
-            if tx.tx_id == tx_id + 1 {
-                return Some(tx);
-            }
-        }
-        return None;
+        self.transactions.iter().find(|tx| tx.tx_id == tx_id + 1)
     }
 
     fn new_tx(&mut self) -> RFBTransaction {
@@ -152,12 +147,8 @@ impl RFBState {
     }
 
     fn get_current_tx(&mut self) -> Option<&mut RFBTransaction> {
-        for tx in &mut self.transactions {
-            if tx.tx_id == self.tx_id {
-                return Some(tx);
-            }
-        }
-        return None;
+        let tx_id = self.tx_id;
+        self.transactions.iter_mut().find(|tx| tx.tx_id == tx_id)
     }
 
     fn parse_request(&mut self, input: &[u8]) -> AppLayerResult {
index 75c752dd2038566e46ce3bca1ff0fccb203d11b0..9c068e2da2b882deb72fe3427df3aaaeef1a6b0f 100644 (file)
@@ -131,12 +131,7 @@ impl TelnetState {
     }
 
     pub fn get_tx(&mut self, tx_id: u64) -> Option<&TelnetTransaction> {
-        for tx in &mut self.transactions {
-            if tx.tx_id == tx_id + 1 {
-                return Some(tx);
-            }
-        }
-        return None;
+        self.transactions.iter().find(|tx| tx.tx_id == tx_id + 1)
     }
 
     fn _new_tx(&mut self) -> TelnetTransaction {