#[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());
+ SCLogNotice!("ssn2vec_map {} guid2name_map {} ssn2vecoffset_map {} ssn2tree_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.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());
}
}
pub ssn2tree_map: HashMap<SMBCommonHdr, SMBTree>,
- // track the max size we expect for TRANS responses
- pub ssn2maxsize_map: HashMap<SMBCommonHdr, u16>,
+ // store partial data records that are transfered in multiple
+ // requests for DCERPC.
pub ssnguid2vec_map: HashMap<SMBHashKeyHdrGuid, Vec<u8>>,
/// TCP segments defragmentation buffer
guid2name_map:HashMap::new(),
ssn2vecoffset_map:HashMap::new(),
ssn2tree_map:HashMap::new(),
- ssn2maxsize_map:HashMap::new(),
ssnguid2vec_map:HashMap::new(),
tcp_buffer_ts:Vec::new(),
tcp_buffer_tc:Vec::new(),
}
if pipe_dcerpc {
- // trans request will tell us the max size of the response
- // if there is more response data, it will first give a
- // TRANS with 'max data cnt' worth of data, and the rest
- // will be pulled by a 'READ'. So we setup an expectation
- // here.
- if rd.params.max_data_cnt > 0 {
- // expect max max_data_cnt for this fid in the other dir
- let ehdr = SMBCommonHdr::from1(r, SMBHDR_TYPE_MAX_SIZE);
- state.ssn2maxsize_map.insert(ehdr, rd.params.max_data_cnt);
- }
-
SCLogDebug!("SMBv1 TRANS TO PIPE");
let hdr = SMBCommonHdr::from1(r, SMBHDR_TYPE_HEADER);
let vercmd = SMBVerCmdStat::new1(r.command);