* 02110-1301, USA.
*/
-use log::*;
use smb::smb::*;
+#[cfg(feature = "debug")]
+use log::*;
+
impl SMBState {
+ #[cfg(not(feature = "debug"))]
+ pub fn _debug_tx_stats(&self) { }
+
+ #[cfg(feature = "debug")]
pub fn _debug_tx_stats(&self) {
if self.transactions.len() > 1 {
let txf = self.transactions.first().unwrap();
}
}
+ #[cfg(not(feature = "debug"))]
+ pub fn _dump_txs(&self) { }
+ #[cfg(feature = "debug")]
pub fn _dump_txs(&self) {
let len = self.transactions.len();
for i in 0..len {
}
}
+ #[cfg(not(feature = "debug"))]
+ pub fn _debug_state_stats(&self) { }
+
+ #[cfg(feature = "debug")]
pub fn _debug_state_stats(&self) {
SCLogNotice!("ssn2vec_map {} guid2name_map {} ssn2vecoffset_map {} ssn2tree_map {} ssn2maxsize_map {} ssnguid2vec_map {} tcp_buffer_ts {} tcp_buffer_tc {} file_ts_guid {} file_tc_guid {} transactions {}", self.ssn2vec_map.len(), self.guid2name_map.len(), self.ssn2vecoffset_map.len(), self.ssn2tree_map.len(), self.ssn2maxsize_map.len(), self.ssnguid2vec_map.len(), self.tcp_buffer_ts.len(), self.tcp_buffer_tc.len(), self.file_ts_guid.len(), self.file_tc_guid.len(), self.transactions.len());
}
use smb::dcerpc::*;
use nom;
+#[cfg(not(feature = "debug"))]
+fn debug_add_progress(_js: &Json, _tx: &SMBTransaction) { }
+
+#[cfg(feature = "debug")]
+fn debug_add_progress(js: &Json, tx: &SMBTransaction) {
+ js.set_boolean("request_done", tx.request_done);
+ js.set_boolean("response_done", tx.request_done);
+}
+
fn guid_to_string(guid: &Vec<u8>) -> String {
if guid.len() == 16 {
let output = format!("{:02x}{:02x}{:02x}{:02x}-{:02x}{:02x}-{:02x}{:02x}-{:02x}{:02x}-{:02x}{:02x}{:02x}{:02x}{:02x}{:02x}",
js.set_integer("session_id", tx.hdr.ssn_id);
js.set_integer("tree_id", tx.hdr.tree_id as u64);
- js.set_boolean("request_done", tx.request_done);
- js.set_boolean("response_done", tx.request_done);
+ debug_add_progress(&js, tx);
+
match tx.type_data {
Some(SMBTransactionTypeData::SESSIONSETUP(ref x)) => {
if let Some(ref ntlmssp) = x.ntlmssp {