diff --git a/rust/src/smb/smb2.rs b/rust/src/smb/smb2.rs index e85906d8d3..b77e359c36 100644 --- a/rust/src/smb/smb2.rs +++ b/rust/src/smb/smb2.rs @@ -376,10 +376,14 @@ pub fn smb2_request_record<'b>(state: &mut SMBState, r: &Smb2Record<'b>) None => { // try to find latest created file in case of chained commands let mut guid_key = SMBCommonHdr::from2(r, SMBHDR_TYPE_FILENAME); - guid_key.msg_id = guid_key.msg_id - 1; - match state.ssn2vec_map.get(&guid_key) { - Some(n) => { n.to_vec() }, - None => { b"".to_vec()}, + if guid_key.msg_id == 0 { + b"".to_vec() + } else { + guid_key.msg_id = guid_key.msg_id - 1; + match state.ssn2vec_map.get(&guid_key) { + Some(n) => { n.to_vec() }, + None => { b"".to_vec()}, + } } }, };