From: Jason Ish Date: Fri, 20 Aug 2021 16:22:30 +0000 (-0600) Subject: rust(lint): remove needless borrows X-Git-Tag: suricata-7.0.0-beta1~1524 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=69cf5c9eea83a2c0f0412fc02034a4b21ee70da4;p=thirdparty%2Fsuricata.git rust(lint): remove needless borrows These are needless borrows (references) as the item is already a reference. --- diff --git a/rust/src/asn1/parse_rules.rs b/rust/src/asn1/parse_rules.rs index 49547b9f45..aa079edd88 100644 --- a/rust/src/asn1/parse_rules.rs +++ b/rust/src/asn1/parse_rules.rs @@ -45,7 +45,7 @@ pub unsafe extern "C" fn rs_detect_asn1_parse(input: *const c_char) -> *mut Dete } }; - match asn1_parse_rule(&arg) { + match asn1_parse_rule(arg) { Ok((_rest, data)) => { let mut data = data; diff --git a/rust/src/dcerpc/dcerpc.rs b/rust/src/dcerpc/dcerpc.rs index 97061bd920..3f00e8312b 100644 --- a/rust/src/dcerpc/dcerpc.rs +++ b/rust/src/dcerpc/dcerpc.rs @@ -902,7 +902,7 @@ impl DCERPCState { } } let parsed = self.handle_common_stub( - &input, + input, (input.len() - leftover_input.len()) as u16, core::STREAM_TOSERVER, ); @@ -998,7 +998,7 @@ impl DCERPCState { // Check if header data was complete. In case of EoF or incomplete data, wait for more // data else return error if self.bytes_consumed < DCERPC_HDR_LEN && input_len > 0 { - parsed = self.process_header(&buffer); + parsed = self.process_header(buffer); if parsed == -1 { self.extend_buffer(buffer, direction); return AppLayerResult::ok(); @@ -1121,7 +1121,7 @@ fn evaluate_stub_params( } let input_slice = &input[..stub_len as usize]; - stub_data_buffer.extend_from_slice(&input_slice); + stub_data_buffer.extend_from_slice(input_slice); stub_len } @@ -1779,7 +1779,7 @@ mod tests { 0x69, 0x00, ]; let mut dcerpc_state = DCERPCState::new(); - assert_eq!(16, dcerpc_state.process_header(&request)); + assert_eq!(16, dcerpc_state.process_header(request)); assert_eq!(1008, dcerpc_state.process_request_pdu(&request[16..])); } @@ -1864,7 +1864,7 @@ mod tests { let mut dcerpc_state = DCERPCState::new(); assert_eq!( AppLayerResult::ok(), - dcerpc_state.handle_input_data(&request, core::STREAM_TOSERVER) + dcerpc_state.handle_input_data(request, core::STREAM_TOSERVER) ); if let Some(hdr) = dcerpc_state.header { assert_eq!(0, hdr.hdrtype); @@ -1900,11 +1900,11 @@ mod tests { let mut dcerpc_state = DCERPCState::new(); assert_eq!( AppLayerResult::ok(), - dcerpc_state.handle_input_data(&bind1, core::STREAM_TOSERVER) + dcerpc_state.handle_input_data(bind1, core::STREAM_TOSERVER) ); assert_eq!( AppLayerResult::ok(), // TODO ASK if this is correct? - dcerpc_state.handle_input_data(&bind2, core::STREAM_TOSERVER) + dcerpc_state.handle_input_data(bind2, core::STREAM_TOSERVER) ); } @@ -1970,11 +1970,11 @@ mod tests { let mut dcerpc_state = DCERPCState::new(); assert_eq!( AppLayerResult::ok(), - dcerpc_state.handle_input_data(&bind1, core::STREAM_TOSERVER) + dcerpc_state.handle_input_data(bind1, core::STREAM_TOSERVER) ); assert_eq!( AppLayerResult::ok(), - dcerpc_state.handle_input_data(&bind2, core::STREAM_TOSERVER) + dcerpc_state.handle_input_data(bind2, core::STREAM_TOSERVER) ); if let Some(ref bind) = dcerpc_state.bind { assert_eq!(16, bind.numctxitems); @@ -1994,15 +1994,15 @@ mod tests { let mut dcerpc_state = DCERPCState::new(); assert_eq!( AppLayerResult::ok(), - dcerpc_state.handle_input_data(&request1, core::STREAM_TOSERVER) + dcerpc_state.handle_input_data(request1, core::STREAM_TOSERVER) ); assert_eq!( AppLayerResult::ok(), - dcerpc_state.handle_input_data(&request2, core::STREAM_TOSERVER) + dcerpc_state.handle_input_data(request2, core::STREAM_TOSERVER) ); assert_eq!( AppLayerResult::ok(), - dcerpc_state.handle_input_data(&request3, core::STREAM_TOSERVER) + dcerpc_state.handle_input_data(request3, core::STREAM_TOSERVER) ); let tx = &dcerpc_state.transactions[0]; assert_eq!(20, tx.stub_data_buffer_ts.len()); @@ -2018,7 +2018,7 @@ mod tests { let mut dcerpc_state = DCERPCState::new(); assert_eq!( AppLayerResult::ok(), - dcerpc_state.handle_input_data(&request1, core::STREAM_TOSERVER) + dcerpc_state.handle_input_data(request1, core::STREAM_TOSERVER) ); } @@ -2032,7 +2032,7 @@ mod tests { let mut dcerpc_state = DCERPCState::new(); assert_eq!( AppLayerResult::ok(), - dcerpc_state.handle_input_data(&request1, core::STREAM_TOSERVER) + dcerpc_state.handle_input_data(request1, core::STREAM_TOSERVER) ); } @@ -2052,15 +2052,15 @@ mod tests { let mut dcerpc_state = DCERPCState::new(); assert_eq!( AppLayerResult::err(), - dcerpc_state.handle_input_data(&fault, core::STREAM_TOSERVER) + dcerpc_state.handle_input_data(fault, core::STREAM_TOSERVER) ); assert_eq!( AppLayerResult::ok(), - dcerpc_state.handle_input_data(&request1, core::STREAM_TOSERVER) + dcerpc_state.handle_input_data(request1, core::STREAM_TOSERVER) ); assert_eq!( AppLayerResult::ok(), - dcerpc_state.handle_input_data(&request2, core::STREAM_TOSERVER) + dcerpc_state.handle_input_data(request2, core::STREAM_TOSERVER) ); let tx = &dcerpc_state.transactions[0]; assert_eq!(12, tx.stub_data_buffer_ts.len()); @@ -2082,15 +2082,15 @@ mod tests { let mut dcerpc_state = DCERPCState::new(); assert_eq!( AppLayerResult::ok(), - dcerpc_state.handle_input_data(&request1, core::STREAM_TOSERVER) + dcerpc_state.handle_input_data(request1, core::STREAM_TOSERVER) ); assert_eq!( AppLayerResult::ok(), - dcerpc_state.handle_input_data(&request2, core::STREAM_TOSERVER) + dcerpc_state.handle_input_data(request2, core::STREAM_TOSERVER) ); assert_eq!( AppLayerResult::ok(), - dcerpc_state.handle_input_data(&request3, core::STREAM_TOSERVER) + dcerpc_state.handle_input_data(request3, core::STREAM_TOSERVER) ); } @@ -2110,11 +2110,11 @@ mod tests { dcerpc_state.data_needed_for_dir = core::STREAM_TOCLIENT; assert_eq!( AppLayerResult::ok(), - dcerpc_state.handle_input_data(&bind_ack1, core::STREAM_TOCLIENT) + dcerpc_state.handle_input_data(bind_ack1, core::STREAM_TOCLIENT) ); assert_eq!( AppLayerResult::ok(), - dcerpc_state.handle_input_data(&bind_ack2, core::STREAM_TOCLIENT) + dcerpc_state.handle_input_data(bind_ack2, core::STREAM_TOCLIENT) ); } @@ -2137,7 +2137,7 @@ mod tests { ]; assert_eq!( AppLayerResult::ok(), - dcerpc_state.handle_input_data(&bindbuf, core::STREAM_TOSERVER) + dcerpc_state.handle_input_data(bindbuf, core::STREAM_TOSERVER) ); if let Some(ref bind) = dcerpc_state.bind { let bind_uuid = &bind.uuid_list[0].uuid; @@ -2171,7 +2171,7 @@ mod tests { let mut dcerpc_state = DCERPCState::new(); assert_eq!( AppLayerResult::ok(), - dcerpc_state.handle_input_data(&bindbuf, core::STREAM_TOSERVER) + dcerpc_state.handle_input_data(bindbuf, core::STREAM_TOSERVER) ); } @@ -2191,7 +2191,7 @@ mod tests { dcerpc_state.data_needed_for_dir = core::STREAM_TOCLIENT; assert_eq!( AppLayerResult::ok(), - dcerpc_state.handle_input_data(&bind_ack, core::STREAM_TOCLIENT) + dcerpc_state.handle_input_data(bind_ack, core::STREAM_TOCLIENT) ); } @@ -2442,11 +2442,11 @@ mod tests { ]; assert_eq!( AppLayerResult::ok(), - dcerpc_state.handle_input_data(&bind1, core::STREAM_TOSERVER) + dcerpc_state.handle_input_data(bind1, core::STREAM_TOSERVER) ); assert_eq!( AppLayerResult::ok(), - dcerpc_state.handle_input_data(&bind_ack1, core::STREAM_TOCLIENT) + dcerpc_state.handle_input_data(bind_ack1, core::STREAM_TOCLIENT) ); if let Some(ref back) = dcerpc_state.bindack { assert_eq!(1, back.accepted_uuid_list.len()); @@ -2455,11 +2455,11 @@ mod tests { } assert_eq!( AppLayerResult::ok(), - dcerpc_state.handle_input_data(&bind2, core::STREAM_TOSERVER) + dcerpc_state.handle_input_data(bind2, core::STREAM_TOSERVER) ); assert_eq!( AppLayerResult::ok(), - dcerpc_state.handle_input_data(&bind_ack2, core::STREAM_TOCLIENT) + dcerpc_state.handle_input_data(bind_ack2, core::STREAM_TOCLIENT) ); if let Some(ref back) = dcerpc_state.bindack { assert_eq!(1, back.accepted_uuid_list.len()); @@ -2468,11 +2468,11 @@ mod tests { } assert_eq!( AppLayerResult::ok(), - dcerpc_state.handle_input_data(&bind3, core::STREAM_TOSERVER) + dcerpc_state.handle_input_data(bind3, core::STREAM_TOSERVER) ); assert_eq!( AppLayerResult::ok(), - dcerpc_state.handle_input_data(&bind_ack3, core::STREAM_TOCLIENT) + dcerpc_state.handle_input_data(bind_ack3, core::STREAM_TOCLIENT) ); if let Some(ref back) = dcerpc_state.bindack { assert_eq!(1, back.accepted_uuid_list.len()); diff --git a/rust/src/dcerpc/dcerpc_udp.rs b/rust/src/dcerpc/dcerpc_udp.rs index 44990ee484..42184d44bd 100644 --- a/rust/src/dcerpc/dcerpc_udp.rs +++ b/rust/src/dcerpc/dcerpc_udp.rs @@ -145,7 +145,7 @@ impl DCERPCUDPState { match hdr.pkt_type { DCERPC_TYPE_REQUEST => { - tx.stub_data_buffer_ts.extend_from_slice(&input); + tx.stub_data_buffer_ts.extend_from_slice(input); tx.frag_cnt_ts += 1; if done { tx.req_done = true; @@ -153,7 +153,7 @@ impl DCERPCUDPState { return true; } DCERPC_TYPE_RESPONSE => { - tx.stub_data_buffer_tc.extend_from_slice(&input); + tx.stub_data_buffer_tc.extend_from_slice(input); tx.frag_cnt_tc += 1; if done { tx.resp_done = true; diff --git a/rust/src/dcerpc/detect.rs b/rust/src/dcerpc/detect.rs index 5be74782a6..3a8fb632d7 100644 --- a/rust/src/dcerpc/detect.rs +++ b/rust/src/dcerpc/detect.rs @@ -280,7 +280,7 @@ pub unsafe extern "C" fn rs_dcerpc_iface_parse(carg: *const c_char) -> *mut c_vo } }; - match parse_iface_data(&arg) { + match parse_iface_data(arg) { Ok(detect) => Box::into_raw(Box::new(detect)) as *mut _, Err(_) => std::ptr::null_mut(), } @@ -327,7 +327,7 @@ pub unsafe extern "C" fn rs_dcerpc_opnum_parse(carg: *const c_char) -> *mut c_vo } }; - match parse_opnum_data(&arg) { + match parse_opnum_data(arg) { Ok(detect) => Box::into_raw(Box::new(detect)) as *mut _, Err(_) => std::ptr::null_mut(), } diff --git a/rust/src/dns/detect.rs b/rust/src/dns/detect.rs index 3cf626e017..326e9c38a7 100644 --- a/rust/src/dns/detect.rs +++ b/rust/src/dns/detect.rs @@ -107,7 +107,7 @@ pub unsafe extern "C" fn rs_detect_dns_opcode_parse(carg: *const c_char) -> *mut } }; - match parse_opcode(&arg) { + match parse_opcode(arg) { Ok(detect) => Box::into_raw(Box::new(detect)) as *mut _, Err(_) => std::ptr::null_mut(), } diff --git a/rust/src/dns/dns.rs b/rust/src/dns/dns.rs index 4bb8d6de8f..467c5a9acb 100644 --- a/rust/src/dns/dns.rs +++ b/rust/src/dns/dns.rs @@ -564,7 +564,7 @@ impl DNSState { if cur_i.len() == 1 { return AppLayerResult::incomplete(consumed as u32, 2 as u32); } - let size = match be_u16(&cur_i) as IResult<&[u8],u16> { + let size = match be_u16(cur_i) as IResult<&[u8],u16> { Ok((_, len)) => len, _ => 0 } as usize; @@ -611,7 +611,7 @@ impl DNSState { if cur_i.len() == 1 { return AppLayerResult::incomplete(consumed as u32, 2 as u32); } - let size = match be_u16(&cur_i) as IResult<&[u8],u16> { + let size = match be_u16(cur_i) as IResult<&[u8],u16> { Ok((_, len)) => len, _ => 0 } as usize; diff --git a/rust/src/dns/log.rs b/rust/src/dns/log.rs index 12c6358c7e..22ffefa521 100644 --- a/rust/src/dns/log.rs +++ b/rust/src/dns/log.rs @@ -453,7 +453,7 @@ fn dns_log_json_answer_detail(answer: &DNSAnswerEntry) -> Result { - jsa.set_string("rdata", &dns_print_addr(&addr))?; + jsa.set_string("rdata", &dns_print_addr(addr))?; } DNSRData::CNAME(bytes) | DNSRData::MX(bytes) | @@ -461,16 +461,16 @@ fn dns_log_json_answer_detail(answer: &DNSAnswerEntry) -> Result { - jsa.set_string_from_bytes("rdata", &bytes)?; + jsa.set_string_from_bytes("rdata", bytes)?; } DNSRData::SOA(soa) => { - jsa.set_object("soa", &dns_log_soa(&soa)?)?; + jsa.set_object("soa", &dns_log_soa(soa)?)?; } DNSRData::SSHFP(sshfp) => { - jsa.set_object("sshfp", &dns_log_sshfp(&sshfp)?)?; + jsa.set_object("sshfp", &dns_log_sshfp(sshfp)?)?; } DNSRData::SRV(srv) => { - jsa.set_object("srv", &dns_log_srv(&srv)?)?; + jsa.set_object("srv", &dns_log_srv(srv)?)?; } _ => {} } @@ -528,7 +528,7 @@ fn dns_log_json_answer(js: &mut JsonBuilder, response: &DNSResponse, flags: u64) JsonBuilder::new_array()); } if let Some(a) = answer_types.get_mut(&type_string) { - a.append_string(&dns_print_addr(&addr))?; + a.append_string(&dns_print_addr(addr))?; } } DNSRData::CNAME(bytes) | @@ -542,7 +542,7 @@ fn dns_log_json_answer(js: &mut JsonBuilder, response: &DNSResponse, flags: u64) JsonBuilder::new_array()); } if let Some(a) = answer_types.get_mut(&type_string) { - a.append_string_from_bytes(&bytes)?; + a.append_string_from_bytes(bytes)?; } }, DNSRData::SOA(soa) => { @@ -551,7 +551,7 @@ fn dns_log_json_answer(js: &mut JsonBuilder, response: &DNSResponse, flags: u64) JsonBuilder::new_array()); } if let Some(a) = answer_types.get_mut(&type_string) { - a.append_object(&dns_log_soa(&soa)?)?; + a.append_object(&dns_log_soa(soa)?)?; } }, DNSRData::SSHFP(sshfp) => { @@ -560,7 +560,7 @@ fn dns_log_json_answer(js: &mut JsonBuilder, response: &DNSResponse, flags: u64) JsonBuilder::new_array()); } if let Some(a) = answer_types.get_mut(&type_string) { - a.append_object(&dns_log_sshfp(&sshfp)?)?; + a.append_object(&dns_log_sshfp(sshfp)?)?; } }, DNSRData::SRV(srv) => { @@ -569,7 +569,7 @@ fn dns_log_json_answer(js: &mut JsonBuilder, response: &DNSResponse, flags: u64) JsonBuilder::new_array()); } if let Some(a) = answer_types.get_mut(&type_string) { - a.append_object(&dns_log_srv(&srv)?)?; + a.append_object(&dns_log_srv(srv)?)?; } }, _ => {} @@ -712,7 +712,7 @@ fn dns_log_json_answer_v1(header: &DNSHeader, answer: &DNSAnswerEntry) match &answer.data { DNSRData::A(addr) | DNSRData::AAAA(addr) => { - js.set_string("rdata", &dns_print_addr(&addr))?; + js.set_string("rdata", &dns_print_addr(addr))?; } DNSRData::CNAME(bytes) | DNSRData::MX(bytes) | @@ -720,13 +720,13 @@ fn dns_log_json_answer_v1(header: &DNSHeader, answer: &DNSAnswerEntry) DNSRData::TXT(bytes) | DNSRData::NULL(bytes) | DNSRData::PTR(bytes) => { - js.set_string_from_bytes("rdata", &bytes)?; + js.set_string_from_bytes("rdata", bytes)?; } DNSRData::SOA(soa) => { - js.set_object("soa", &dns_log_soa(&soa)?)?; + js.set_object("soa", &dns_log_soa(soa)?)?; } DNSRData::SSHFP(sshfp) => { - js.set_object("sshfp", &dns_log_sshfp(&sshfp)?)?; + js.set_object("sshfp", &dns_log_sshfp(sshfp)?)?; } _ => {} } diff --git a/rust/src/ffi/hashing.rs b/rust/src/ffi/hashing.rs index 7f9f09aef7..c04ad19b37 100644 --- a/rust/src/ffi/hashing.rs +++ b/rust/src/ffi/hashing.rs @@ -66,7 +66,7 @@ pub unsafe extern "C" fn SCSha256FinalizeToHex(hasher: &mut SCSha256, out: *mut let output = std::slice::from_raw_parts_mut(out, len as usize); // This will panic if the sizes differ. - output[0..len as usize - 1].copy_from_slice(&hex.as_bytes()); + output[0..len as usize - 1].copy_from_slice(hex.as_bytes()); // Terminate the string. output[output.len() - 1] = 0; @@ -171,7 +171,7 @@ pub unsafe extern "C" fn SCMd5FinalizeToHex(hasher: &mut SCMd5, out: *mut c_char let output = std::slice::from_raw_parts_mut(out, len as usize); // This will panic if the sizes differ. - output[0..len as usize - 1].copy_from_slice(&hex.as_bytes()); + output[0..len as usize - 1].copy_from_slice(hex.as_bytes()); // Terminate the string. output[output.len() - 1] = 0; @@ -205,7 +205,7 @@ pub unsafe extern "C" fn SCMd5HashBufferToHex( let hex = format!("{:x}", &hash); // This will panic if the sizes differ. - output[0..len as usize - 1].copy_from_slice(&hex.as_bytes()); + output[0..len as usize - 1].copy_from_slice(hex.as_bytes()); // Terminate the string. output[output.len() - 1] = 0; diff --git a/rust/src/filecontainer.rs b/rust/src/filecontainer.rs index d61d246164..e2ff51db5c 100644 --- a/rust/src/filecontainer.rs +++ b/rust/src/filecontainer.rs @@ -77,7 +77,7 @@ impl FileContainer { match unsafe {SC} { None => panic!("BUG no suricata_config"), Some(c) => { - (c.FileContainerRecycle)(&self); + (c.FileContainerRecycle)(self); }, } } @@ -88,7 +88,7 @@ impl FileContainer { Some(c) => { SCLogDebug!("FILE {:p} OPEN flags {:04X}", &self, flags); - let res = (c.FileOpenFile)(&self, cfg.files_sbcfg, *track_id, + let res = (c.FileOpenFile)(self, cfg.files_sbcfg, *track_id, name.as_ptr(), name.len() as u16, ptr::null(), 0u32, flags); res @@ -107,13 +107,13 @@ impl FileContainer { let res = match is_gap { false => { SCLogDebug!("appending file data"); - let r = (c.FileAppendData)(&self, *track_id, + let r = (c.FileAppendData)(self, *track_id, data.as_ptr(), data.len() as u32); r }, true => { SCLogDebug!("appending GAP"); - let r = (c.FileAppendGAP)(&self, *track_id, + let r = (c.FileAppendGAP)(self, *track_id, data.as_ptr(), data.len() as u32); r }, @@ -129,7 +129,7 @@ impl FileContainer { match unsafe {SC} { None => panic!("BUG no suricata_config"), Some(c) => { - let res = (c.FileCloseFile)(&self, *track_id, ptr::null(), 0u32, flags); + let res = (c.FileCloseFile)(self, *track_id, ptr::null(), 0u32, flags); res } } @@ -141,7 +141,7 @@ impl FileContainer { match unsafe {SC} { None => panic!("BUG no suricata_config"), Some(c) => { - (c.FilePrune)(&self); + (c.FilePrune)(self); } } } @@ -150,7 +150,7 @@ impl FileContainer { match unsafe {SC} { None => panic!("BUG no suricata_config"), Some(c) => { - (c.FileSetTx)(&self, tx_id); + (c.FileSetTx)(self, tx_id); } } } diff --git a/rust/src/http2/detect.rs b/rust/src/http2/detect.rs index e017ec5b90..296153bba4 100644 --- a/rust/src/http2/detect.rs +++ b/rust/src/http2/detect.rs @@ -289,7 +289,7 @@ fn http2_detect_settingsctx_match( for i in 0..tx.frames_ts.len() { match &tx.frames_ts[i].data { HTTP2FrameTypeData::SETTINGS(set) => { - if http2_detect_settings_match(&set, ctx) != 0 { + if http2_detect_settings_match(set, ctx) != 0 { return 1; } } @@ -300,7 +300,7 @@ fn http2_detect_settingsctx_match( for i in 0..tx.frames_tc.len() { match &tx.frames_tc[i].data { HTTP2FrameTypeData::SETTINGS(set) => { - if http2_detect_settings_match(&set, ctx) != 0 { + if http2_detect_settings_match(set, ctx) != 0 { return 1; } } @@ -390,7 +390,7 @@ fn http2_detect_sizeupdatectx_match( for i in 0..tx.frames_ts.len() { match &tx.frames_ts[i].data { HTTP2FrameTypeData::HEADERS(hd) => { - if http2_detect_sizeupdate_match(&hd, ctx) != 0 { + if http2_detect_sizeupdate_match(hd, ctx) != 0 { return 1; } } @@ -401,7 +401,7 @@ fn http2_detect_sizeupdatectx_match( for i in 0..tx.frames_tc.len() { match &tx.frames_tc[i].data { HTTP2FrameTypeData::HEADERS(hd) => { - if http2_detect_sizeupdate_match(&hd, ctx) != 0 { + if http2_detect_sizeupdate_match(hd, ctx) != 0 { return 1; } } @@ -634,7 +634,7 @@ pub unsafe extern "C" fn rs_http2_tx_get_header( match &tx.frames_ts[i].data { HTTP2FrameTypeData::HEADERS(hd) => { if nb < pos + hd.blocks.len() as u32 { - let ehdr = http2_escape_header(&hd, nb - pos); + let ehdr = http2_escape_header(hd, nb - pos); tx.escaped.push(ehdr); let idx = tx.escaped.len() - 1; let value = &tx.escaped[idx]; @@ -653,7 +653,7 @@ pub unsafe extern "C" fn rs_http2_tx_get_header( match &tx.frames_tc[i].data { HTTP2FrameTypeData::HEADERS(hd) => { if nb < pos + hd.blocks.len() as u32 { - let ehdr = http2_escape_header(&hd, nb - pos); + let ehdr = http2_escape_header(hd, nb - pos); tx.escaped.push(ehdr); let idx = tx.escaped.len() - 1; let value = &tx.escaped[idx]; diff --git a/rust/src/ike/ike.rs b/rust/src/ike/ike.rs index 1b1fb0bd8b..38aefeb01b 100644 --- a/rust/src/ike/ike.rs +++ b/rust/src/ike/ike.rs @@ -179,7 +179,7 @@ impl IKEState { let tx = self .transactions .iter() - .position(|ref tx| tx.tx_id == tx_id + 1); + .position(|tx| tx.tx_id == tx_id + 1); debug_assert!(tx != None); if let Some(idx) = tx { let _ = self.transactions.remove(idx); diff --git a/rust/src/ike/ikev2.rs b/rust/src/ike/ikev2.rs index 53e7072c24..c6e4d24f7c 100644 --- a/rust/src/ike/ikev2.rs +++ b/rust/src/ike/ikev2.rs @@ -216,7 +216,7 @@ pub fn handle_ikev2( } fn add_proposals(state: &mut IKEState, prop: &Vec, direction: u8) { - for ref p in prop { + for p in prop { let transforms: Vec = p.transforms.iter().map(|x| x.into()).collect(); // Rule 1: warn on weak or unknown transforms for xform in &transforms { diff --git a/rust/src/ike/logger.rs b/rust/src/ike/logger.rs index c6809e9330..b5ee8fdb3a 100644 --- a/rust/src/ike/logger.rs +++ b/rust/src/ike/logger.rs @@ -40,7 +40,7 @@ fn add_attributes(transform: &Vec, js: &mut JsonBuilder) -> Result< } else if let Some(hex_value) = &attribute.hex_value { js.set_string( format!("{}_raw", attribute.attribute_type).as_str(), - &hex_value, + hex_value, )?; } } @@ -89,9 +89,9 @@ fn log_ike( } } else if tx.ike_version == 2 { if tx.hdr.flags & IKEV2_FLAG_INITIATOR != 0 { - jb.set_string("role", &"initiator")?; + jb.set_string("role", "initiator")?; } else { - jb.set_string("role", &"responder")?; + jb.set_string("role", "responder")?; jb.set_string("alg_enc", &format!("{:?}", state.ikev2_container.alg_enc))?; jb.set_string("alg_auth", &format!("{:?}", state.ikev2_container.alg_auth))?; jb.set_string("alg_prf", &format!("{:?}", state.ikev2_container.alg_prf))?; diff --git a/rust/src/krb/krb5.rs b/rust/src/krb/krb5.rs index 3f619bb296..733e0d1e35 100644 --- a/rust/src/krb/krb5.rs +++ b/rust/src/krb/krb5.rs @@ -210,7 +210,7 @@ impl KRB5State { } fn free_tx(&mut self, tx_id: u64) { - let tx = self.transactions.iter().position(|ref tx| tx.id == tx_id + 1); + let tx = self.transactions.iter().position(|tx| tx.id == tx_id + 1); debug_assert!(tx != None); if let Some(idx) = tx { let _ = self.transactions.remove(idx); diff --git a/rust/src/modbus/detect.rs b/rust/src/modbus/detect.rs index a540edafc5..44d8731612 100644 --- a/rust/src/modbus/detect.rs +++ b/rust/src/modbus/detect.rs @@ -154,9 +154,9 @@ pub unsafe extern "C" fn rs_modbus_parse(c_arg: *const c_char) -> *mut c_void { return std::ptr::null_mut(); } if let Ok(arg) = CStr::from_ptr(c_arg).to_str() { - match parse_unit_id(&arg) - .or_else(|_| parse_function(&arg)) - .or_else(|_| parse_access(&arg)) + match parse_unit_id(arg) + .or_else(|_| parse_function(arg)) + .or_else(|_| parse_access(arg)) { Ok(detect) => return Box::into_raw(Box::new(detect)) as *mut c_void, Err(()) => return std::ptr::null_mut(), diff --git a/rust/src/modbus/log.rs b/rust/src/modbus/log.rs index ff8eef2fcf..6724291de7 100644 --- a/rust/src/modbus/log.rs +++ b/rust/src/modbus/log.rs @@ -32,13 +32,13 @@ fn log(tx: &ModbusTransaction, js: &mut JsonBuilder) -> Result<(), JsonError> { if let Some(req) = &tx.request { js.open_object("request")?; - log_message(&req, js)?; + log_message(req, js)?; js.close()?; } if let Some(resp) = &tx.response { js.open_object("response")?; - log_message(&resp, js)?; + log_message(resp, js)?; js.close()?; } @@ -67,14 +67,14 @@ fn log_message(msg: &Message, js: &mut JsonBuilder) -> Result<(), JsonError> { js.open_object("diagnostic")?; js.set_uint("raw", func.raw.into())?; js.set_string("code", &func.code.to_string())?; - js.set_string_from_bytes("data", &data)?; + js.set_string_from_bytes("data", data)?; js.close()?; } Data::MEI { mei_type, data } => { js.open_object("mei")?; js.set_uint("raw", mei_type.raw.into())?; js.set_string("code", &mei_type.code.to_string())?; - js.set_string_from_bytes("data", &data)?; + js.set_string_from_bytes("data", data)?; js.close()?; } Data::Read(read) => { @@ -96,7 +96,7 @@ fn log_message(msg: &Message, js: &mut JsonBuilder) -> Result<(), JsonError> { js.close()?; } Data::ByteVec(data) => { - js.set_string_from_bytes("data", &data)?; + js.set_string_from_bytes("data", data)?; } Data::Empty => {} } @@ -111,7 +111,7 @@ fn log_read(read: &Read, js: &mut JsonBuilder) -> Result<(), JsonError> { js.set_uint("quantity", (*quantity).into())?; } Read::Response(data) => { - js.set_string_from_bytes("data", &data)?; + js.set_string_from_bytes("data", data)?; } } @@ -127,7 +127,7 @@ fn log_write(write: &Write, js: &mut JsonBuilder) -> Result<(), JsonError> { } => { js.set_uint("address", (*address).into())?; js.set_uint("quantity", (*quantity).into())?; - js.set_string_from_bytes("data", &data)?; + js.set_string_from_bytes("data", data)?; } Write::Mask { address, diff --git a/rust/src/modbus/modbus.rs b/rust/src/modbus/modbus.rs index e901e3c541..5fc6df4ad9 100644 --- a/rust/src/modbus/modbus.rs +++ b/rust/src/modbus/modbus.rs @@ -1082,7 +1082,7 @@ mod tests { let mut state = ModbusState::new(); assert_eq!( AppLayerResult::ok(), - state.parse(&RD_COILS_REQ, Direction::ToServer) + state.parse(RD_COILS_REQ, Direction::ToServer) ); assert_eq!(state.transactions.len(), 1); @@ -1099,7 +1099,7 @@ mod tests { assert_eq!( AppLayerResult::ok(), - state.parse(&RD_COILS_RESP, Direction::ToClient) + state.parse(RD_COILS_RESP, Direction::ToClient) ); assert_eq!(state.transactions.len(), 1); @@ -1114,7 +1114,7 @@ mod tests { let mut state = ModbusState::new(); assert_eq!( AppLayerResult::ok(), - state.parse(&WR_MULT_REG_REQ, Direction::ToServer) + state.parse(WR_MULT_REG_REQ, Direction::ToServer) ); assert_eq!(state.transactions.len(), 1); @@ -1132,7 +1132,7 @@ mod tests { assert_eq!( AppLayerResult::ok(), - state.parse(&WR_MULT_REG_RESP, Direction::ToClient) + state.parse(WR_MULT_REG_RESP, Direction::ToClient) ); assert_eq!(state.transactions.len(), 1); @@ -1153,7 +1153,7 @@ mod tests { let mut state = ModbusState::new(); assert_eq!( AppLayerResult::ok(), - state.parse(&RD_WR_MULT_REG_REQ, Direction::ToServer) + state.parse(RD_WR_MULT_REG_REQ, Direction::ToServer) ); assert_eq!(state.transactions.len(), 1); @@ -1177,7 +1177,7 @@ mod tests { assert_eq!( AppLayerResult::ok(), - state.parse(&RD_WR_MULT_REG_RESP, Direction::ToClient) + state.parse(RD_WR_MULT_REG_RESP, Direction::ToClient) ); assert_eq!(state.transactions.len(), 1); @@ -1197,7 +1197,7 @@ mod tests { let mut state = ModbusState::new(); assert_eq!( AppLayerResult::ok(), - state.parse(&FORCE_LISTEN_ONLY_MODE, Direction::ToServer) + state.parse(FORCE_LISTEN_ONLY_MODE, Direction::ToServer) ); assert_eq!(state.transactions.len(), 1); @@ -1221,7 +1221,7 @@ mod tests { let mut state = ModbusState::new(); assert_eq!( AppLayerResult::ok(), - state.parse(&INVALID_PROTO_REQ, Direction::ToServer) + state.parse(INVALID_PROTO_REQ, Direction::ToServer) ); assert_eq!(state.transactions.len(), 1); @@ -1235,7 +1235,7 @@ mod tests { let mut state = ModbusState::new(); assert_eq!( AppLayerResult::ok(), - state.parse(&RD_COILS_RESP, Direction::ToClient) + state.parse(RD_COILS_RESP, Direction::ToClient) ); assert_eq!(state.transactions.len(), 1); @@ -1250,7 +1250,7 @@ mod tests { let mut state = ModbusState::new(); assert_eq!( AppLayerResult::incomplete(15, 4), - state.parse(&INVALID_LEN_WR_MULT_REG_REQ, Direction::ToServer) + state.parse(INVALID_LEN_WR_MULT_REG_REQ, Direction::ToServer) ); assert_eq!(state.transactions.len(), 1); @@ -1273,7 +1273,7 @@ mod tests { let mut state = ModbusState::new(); assert_eq!( AppLayerResult::ok(), - state.parse(&RD_COILS_REQ, Direction::ToServer) + state.parse(RD_COILS_REQ, Direction::ToServer) ); assert_eq!(state.transactions.len(), 1); @@ -1290,7 +1290,7 @@ mod tests { assert_eq!( AppLayerResult::ok(), - state.parse(&RD_COILS_ERR_RESP, Direction::ToClient) + state.parse(RD_COILS_ERR_RESP, Direction::ToClient) ); assert_eq!(state.transactions.len(), 1); @@ -1319,7 +1319,7 @@ mod tests { assert_eq!(state.transactions.len(), 0); assert_eq!( AppLayerResult::ok(), - state.parse(&RD_COILS_REQ, Direction::ToServer) + state.parse(RD_COILS_REQ, Direction::ToServer) ); assert_eq!(state.transactions.len(), 1); @@ -1396,7 +1396,7 @@ mod tests { let mut state = ModbusState::new(); assert_eq!( AppLayerResult::ok(), - state.parse(&EXCEEDED_LEN_WR_MULT_REG_REQ, Direction::ToServer) + state.parse(EXCEEDED_LEN_WR_MULT_REG_REQ, Direction::ToServer) ); assert_eq!(state.transactions.len(), 1); @@ -1410,7 +1410,7 @@ mod tests { let mut state = ModbusState::new(); assert_eq!( AppLayerResult::ok(), - state.parse(&INVALID_PDU_WR_MULT_REG_REQ, Direction::ToServer) + state.parse(INVALID_PDU_WR_MULT_REG_REQ, Direction::ToServer) ); assert_eq!(state.transactions.len(), 1); @@ -1426,7 +1426,7 @@ mod tests { let mut state = ModbusState::new(); assert_eq!( AppLayerResult::ok(), - state.parse(&MASK_WR_REG_REQ, Direction::ToServer) + state.parse(MASK_WR_REG_REQ, Direction::ToServer) ); assert_eq!(state.transactions.len(), 1); @@ -1444,7 +1444,7 @@ mod tests { assert_eq!( AppLayerResult::ok(), - state.parse(&MASK_WR_REG_RESP, Direction::ToClient) + state.parse(MASK_WR_REG_RESP, Direction::ToClient) ); assert_eq!(state.transactions.len(), 1); @@ -1466,7 +1466,7 @@ mod tests { let mut state = ModbusState::new(); assert_eq!( AppLayerResult::ok(), - state.parse(&WR_SINGLE_REG_REQ, Direction::ToServer) + state.parse(WR_SINGLE_REG_REQ, Direction::ToServer) ); assert_eq!(state.transactions.len(), 1); @@ -1483,7 +1483,7 @@ mod tests { assert_eq!( AppLayerResult::ok(), - state.parse(&WR_SINGLE_REG_RESP, Direction::ToClient) + state.parse(WR_SINGLE_REG_RESP, Direction::ToClient) ); assert_eq!(state.transactions.len(), 1); @@ -1504,7 +1504,7 @@ mod tests { let mut state = ModbusState::new(); assert_eq!( AppLayerResult::ok(), - state.parse(&INVALID_MASK_WR_REG_REQ, Direction::ToServer) + state.parse(INVALID_MASK_WR_REG_REQ, Direction::ToServer) ); assert_eq!(state.transactions.len(), 1); @@ -1516,7 +1516,7 @@ mod tests { assert_eq!( AppLayerResult::ok(), - state.parse(&MASK_WR_REG_RESP, Direction::ToClient) + state.parse(MASK_WR_REG_RESP, Direction::ToClient) ); assert_eq!(state.transactions.len(), 1); @@ -1538,7 +1538,7 @@ mod tests { let mut state = ModbusState::new(); assert_eq!( AppLayerResult::ok(), - state.parse(&INVALID_WR_SINGLE_REG_REQ, Direction::ToServer) + state.parse(INVALID_WR_SINGLE_REG_REQ, Direction::ToServer) ); assert_eq!(state.transactions.len(), 1); @@ -1550,7 +1550,7 @@ mod tests { assert_eq!( AppLayerResult::ok(), - state.parse(&WR_SINGLE_REG_RESP, Direction::ToClient) + state.parse(WR_SINGLE_REG_RESP, Direction::ToClient) ); assert_eq!(state.transactions.len(), 1); @@ -1571,7 +1571,7 @@ mod tests { let mut state = ModbusState::new(); assert_eq!( AppLayerResult::ok(), - state.parse(&INVALID_FUNC_CODE, Direction::ToServer) + state.parse(INVALID_FUNC_CODE, Direction::ToServer) ); assert_eq!(state.transactions.len(), 1); diff --git a/rust/src/mqtt/mqtt_property.rs b/rust/src/mqtt/mqtt_property.rs index 5f09c3d6f2..c407349f60 100644 --- a/rust/src/mqtt/mqtt_property.rs +++ b/rust/src/mqtt/mqtt_property.rs @@ -68,13 +68,13 @@ impl crate::mqtt::mqtt_property::MQTTProperty { js.set_uint("message_expiry_interval", *v as u64)?; } crate::mqtt::mqtt_property::MQTTProperty::CONTENT_TYPE(v) => { - js.set_string("content_type", &v)?; + js.set_string("content_type", v)?; } crate::mqtt::mqtt_property::MQTTProperty::RESPONSE_TOPIC(v) => { - js.set_string("response_topic", &v)?; + js.set_string("response_topic", v)?; } crate::mqtt::mqtt_property::MQTTProperty::CORRELATION_DATA(v) => { - js.set_string_from_bytes("correlation_data", &v)?; + js.set_string_from_bytes("correlation_data", v)?; } crate::mqtt::mqtt_property::MQTTProperty::SUBSCRIPTION_IDENTIFIER(v) => { js.set_uint("subscription_identifier", *v as u64)?; @@ -83,16 +83,16 @@ impl crate::mqtt::mqtt_property::MQTTProperty { js.set_uint("session_expiry_interval", *v as u64)?; } crate::mqtt::mqtt_property::MQTTProperty::ASSIGNED_CLIENT_IDENTIFIER(v) => { - js.set_string("assigned_client_identifier", &v)?; + js.set_string("assigned_client_identifier", v)?; } crate::mqtt::mqtt_property::MQTTProperty::SERVER_KEEP_ALIVE(v) => { js.set_uint("server_keep_alive", *v as u64)?; } crate::mqtt::mqtt_property::MQTTProperty::AUTHENTICATION_METHOD(v) => { - js.set_string("authentication_method", &v)?; + js.set_string("authentication_method", v)?; } crate::mqtt::mqtt_property::MQTTProperty::AUTHENTICATION_DATA(v) => { - js.set_string_from_bytes("authentication_data", &v)?; + js.set_string_from_bytes("authentication_data", v)?; } crate::mqtt::mqtt_property::MQTTProperty::REQUEST_PROBLEM_INFORMATION(v) => { js.set_uint("request_problem_information", *v as u64)?; @@ -104,13 +104,13 @@ impl crate::mqtt::mqtt_property::MQTTProperty { js.set_uint("request_response_information", *v as u64)?; } crate::mqtt::mqtt_property::MQTTProperty::RESPONSE_INFORMATION(v) => { - js.set_string("response_information", &v)?; + js.set_string("response_information", v)?; } crate::mqtt::mqtt_property::MQTTProperty::SERVER_REFERENCE(v) => { - js.set_string("server_reference", &v)?; + js.set_string("server_reference", v)?; } crate::mqtt::mqtt_property::MQTTProperty::REASON_STRING(v) => { - js.set_string("reason_string", &v)?; + js.set_string("reason_string", v)?; } crate::mqtt::mqtt_property::MQTTProperty::RECEIVE_MAXIMUM(v) => { js.set_uint("receive_maximum", *v as u64)?; @@ -128,7 +128,7 @@ impl crate::mqtt::mqtt_property::MQTTProperty { js.set_uint("retain_available", *v as u64)?; } crate::mqtt::mqtt_property::MQTTProperty::USER_PROPERTY((k, v)) => { - js.set_string(k, &v)?; + js.set_string(k, v)?; } crate::mqtt::mqtt_property::MQTTProperty::MAXIMUM_PACKET_SIZE(v) => { js.set_uint("maximum_packet_size", *v as u64)?; diff --git a/rust/src/mqtt/parser.rs b/rust/src/mqtt/parser.rs index 86ad3d83b9..31adb8755a 100644 --- a/rust/src/mqtt/parser.rs +++ b/rust/src/mqtt/parser.rs @@ -59,7 +59,7 @@ named!(#[inline], pub parse_mqtt_string, length: be_u16 >> content: take!(length) >> ( - String::from_utf8_lossy(&content).to_string() + String::from_utf8_lossy(content).to_string() ) )); @@ -124,7 +124,7 @@ fn parse_properties(input: &[u8], precond: bool) -> IResult<&[u8], Option return Err(e), } @@ -503,7 +503,7 @@ pub fn parse_message(input: &[u8], protocol_version: u8, max_msg_size: usize) -> // In this case we return the full input buffer, since this is // what the skipped_length value also refers to: header _and_ // remaining length. - return Ok((&input, msg)); + return Ok((input, msg)); } // We have not exceeded the maximum length limit, but still do not diff --git a/rust/src/nfs/nfs.rs b/rust/src/nfs/nfs.rs index f22483ae9f..2187abb6b9 100644 --- a/rust/src/nfs/nfs.rs +++ b/rust/src/nfs/nfs.rs @@ -266,7 +266,7 @@ pub fn filetracker_newchunk(ft: &mut FileTransferTracker, files: &mut FileContai { match unsafe {SURICATA_NFS_FILE_CONFIG} { Some(sfcm) => { - ft.new_chunk(sfcm, files, flags, &name, data, chunk_offset, + ft.new_chunk(sfcm, files, flags, name, data, chunk_offset, chunk_size, fill_bytes, is_last, xid); } None => panic!("no SURICATA_NFS_FILE_CONFIG"), } @@ -1214,7 +1214,7 @@ impl NFSState { SCLogDebug!("large record {}, likely file xfer", rec_size); // quick peek, are in READ mode? - if self.peek_reply_record(&rpc_hdr) == NFSPROC3_READ { + if self.peek_reply_record(rpc_hdr) == NFSPROC3_READ { SCLogDebug!("CONFIRMED large READ record {}, likely file chunk xfer", rec_size); // we should have enough data to parse the RPC record diff --git a/rust/src/nfs/nfs2.rs b/rust/src/nfs/nfs2.rs index 44a49ead4b..945ba25f0a 100644 --- a/rust/src/nfs/nfs2.rs +++ b/rust/src/nfs/nfs2.rs @@ -99,7 +99,7 @@ impl NFSState { match parse_nfs2_reply_read(r.prog_data) { Ok((_, ref reply)) => { SCLogDebug!("NFSv2: READ reply record"); - self.process_read_record(r, reply, Some(&xidmap)); + self.process_read_record(r, reply, Some(xidmap)); nfs_status = reply.status; }, _ => { @@ -107,7 +107,7 @@ impl NFSState { }, } } else { - let stat : u32 = match be_u32(&r.prog_data) as IResult<&[u8],_> { + let stat : u32 = match be_u32(r.prog_data) as IResult<&[u8],_> { Ok((_, stat)) => stat, _ => 0 }; diff --git a/rust/src/nfs/nfs3.rs b/rust/src/nfs/nfs3.rs index f910b8a919..9160a80c16 100644 --- a/rust/src/nfs/nfs3.rs +++ b/rust/src/nfs/nfs3.rs @@ -220,7 +220,7 @@ impl NFSState { }; } else if xidmap.procedure == NFSPROC3_READ { if let Ok((_, rd)) = parse_nfs3_reply_read(r.prog_data) { - self.process_read_record(r, &rd, Some(&xidmap)); + self.process_read_record(r, &rd, Some(xidmap)); nfs_status = rd.status; } else { self.set_event(NFSEvent::MalformedData); @@ -259,7 +259,7 @@ impl NFSState { } // for all other record types only parse the status else { - let stat : u32 = match be_u32(&r.prog_data) as IResult<&[u8],_> { + let stat : u32 = match be_u32(r.prog_data) as IResult<&[u8],_> { Ok((_, stat)) => stat, _ => 0 }; diff --git a/rust/src/nfs/nfs4.rs b/rust/src/nfs/nfs4.rs index 51d78800e3..790d443338 100644 --- a/rust/src/nfs/nfs4.rs +++ b/rust/src/nfs/nfs4.rs @@ -197,7 +197,7 @@ impl NFSState { xidmap.file_name = rd.filename.to_vec(); main_opcode = NFSPROC4_CREATE; } - &Nfs4RequestContent::Remove(ref rd) => { + &Nfs4RequestContent::Remove(rd) => { SCLogDebug!("REMOVEv4: {:?}", rd); xidmap.file_name = rd.to_vec(); main_opcode = NFSPROC4_REMOVE; @@ -213,7 +213,7 @@ impl NFSState { } if main_opcode != 0 { - self.new_tx_v4(r, &xidmap, main_opcode, &aux_opcodes); + self.new_tx_v4(r, xidmap, main_opcode, &aux_opcodes); } } @@ -263,7 +263,7 @@ impl NFSState { match parse_nfs4_request_compound(data) { Ok((_, rd)) => { SCLogDebug!("NFSPROC4_COMPOUND: {:?}", rd); - self.compound_request(&r, &rd, &mut xidmap); + self.compound_request(r, &rd, &mut xidmap); }, Err(nom::Err::Incomplete(_n)) => { SCLogDebug!("NFSPROC4_COMPOUND: INCOMPLETE {:?}", _n); @@ -326,7 +326,7 @@ impl NFSState { data_len: rd.data.len() as u32, data: rd.data, }; - self.process_read_record(r, &reply, Some(&xidmap)); + self.process_read_record(r, &reply, Some(xidmap)); } }, &Nfs4ResponseContent::Open(_s, ref rd) => { @@ -388,7 +388,7 @@ impl NFSState { match parse_nfs4_response_compound(data) { Ok((_, rd)) => { SCLogDebug!("COMPOUNDv4: {:?}", rd); - self.compound_response(&r, &rd, xidmap); + self.compound_response(r, &rd, xidmap); }, Err(nom::Err::Incomplete(_)) => { self.set_event(NFSEvent::MalformedData); diff --git a/rust/src/ntp/ntp.rs b/rust/src/ntp/ntp.rs index 61283099ee..6b0de9705a 100644 --- a/rust/src/ntp/ntp.rs +++ b/rust/src/ntp/ntp.rs @@ -132,7 +132,7 @@ impl NTPState { } fn free_tx(&mut self, tx_id: u64) { - let tx = self.transactions.iter().position(|ref tx| tx.id == tx_id + 1); + let tx = self.transactions.iter().position(|tx| tx.id == tx_id + 1); debug_assert!(tx != None); if let Some(idx) = tx { let _ = self.transactions.remove(idx); diff --git a/rust/src/rdp/log.rs b/rust/src/rdp/log.rs index a2e806c0e2..14d75b86a7 100644 --- a/rust/src/rdp/log.rs +++ b/rust/src/rdp/log.rs @@ -364,7 +364,7 @@ fn mcs_req_to_json(mcs: &McsConnectRequest, js: &mut JsonBuilder) -> Result<(), if net.channels.len() > 0 { js.open_array("channels")?; for channel in &net.channels { - js.append_string(&channel)?; + js.append_string(channel)?; } js.close()?; } diff --git a/rust/src/rdp/rdp.rs b/rust/src/rdp/rdp.rs index dbe1030024..e86b6dd165 100644 --- a/rust/src/rdp/rdp.rs +++ b/rust/src/rdp/rdp.rs @@ -175,7 +175,7 @@ impl RdpState { return AppLayerResult::ok(); } if self.tls_parsing { - match parse_tls_plaintext(&available) { + match parse_tls_plaintext(available) { Ok((remainder, _tls)) => { // bytes available for futher parsing are what remain available = remainder; @@ -195,7 +195,7 @@ impl RdpState { } } else { // every message should be encapsulated within a T.123 tpkt - match parse_t123_tpkt(&available) { + match parse_t123_tpkt(available) { // success Ok((remainder, t123)) => { // bytes available for futher parsing are what remain @@ -268,7 +268,7 @@ impl RdpState { return AppLayerResult::ok(); } if self.tls_parsing { - match parse_tls_plaintext(&available) { + match parse_tls_plaintext(available) { Ok((remainder, tls)) => { // bytes available for futher parsing are what remain available = remainder; @@ -307,7 +307,7 @@ impl RdpState { } } else { // every message should be encapsulated within a T.123 tpkt - match parse_t123_tpkt(&available) { + match parse_t123_tpkt(available) { // success Ok((remainder, t123)) => { // bytes available for futher parsing are what remain @@ -518,25 +518,25 @@ mod tests { #[test] fn test_probe_rdp() { let buf: &[u8] = &[0x03, 0x00]; - assert_eq!(true, probe_rdp(&buf)); + assert_eq!(true, probe_rdp(buf)); } #[test] fn test_probe_rdp_other() { let buf: &[u8] = &[0x04, 0x00]; - assert_eq!(false, probe_rdp(&buf)); + assert_eq!(false, probe_rdp(buf)); } #[test] fn test_probe_tls_handshake() { let buf: &[u8] = &[0x16, 0x00]; - assert_eq!(true, probe_tls_handshake(&buf)); + assert_eq!(true, probe_tls_handshake(buf)); } #[test] fn test_probe_tls_handshake_other() { let buf: &[u8] = &[0x17, 0x00]; - assert_eq!(false, probe_tls_handshake(&buf)); + assert_eq!(false, probe_tls_handshake(buf)); } #[test] @@ -549,10 +549,10 @@ mod tests { ]; let mut state = RdpState::new(); // will consume 0, request length + 1 - assert_eq!(AppLayerResult::incomplete(0, 9), state.parse_ts(&buf_1)); + assert_eq!(AppLayerResult::incomplete(0, 9), state.parse_ts(buf_1)); assert_eq!(0, state.transactions.len()); // exactly aligns with transaction - assert_eq!(AppLayerResult::ok(), state.parse_ts(&buf_2)); + assert_eq!(AppLayerResult::ok(), state.parse_ts(buf_2)); assert_eq!(1, state.transactions.len()); let item = RdpTransactionItem::X224ConnectionRequest(X224ConnectionRequest { cdt: 0, @@ -573,7 +573,7 @@ mod tests { fn test_parse_ts_other() { let buf: &[u8] = &[0x03, 0x00, 0x00, 0x01, 0x00]; let mut state = RdpState::new(); - assert_eq!(AppLayerResult::err(), state.parse_ts(&buf)); + assert_eq!(AppLayerResult::err(), state.parse_ts(buf)); } #[test] @@ -582,10 +582,10 @@ mod tests { let buf_2: &[u8] = &[0x03, 0x00, 0x00, 0x09, 0x02, 0xf0, 0x80, 0x7f, 0x66]; let mut state = RdpState::new(); // will consume 0, request length + 1 - assert_eq!(AppLayerResult::incomplete(0, 6), state.parse_tc(&buf_1)); + assert_eq!(AppLayerResult::incomplete(0, 6), state.parse_tc(buf_1)); assert_eq!(0, state.transactions.len()); // exactly aligns with transaction - assert_eq!(AppLayerResult::ok(), state.parse_tc(&buf_2)); + assert_eq!(AppLayerResult::ok(), state.parse_tc(buf_2)); assert_eq!(1, state.transactions.len()); let item = RdpTransactionItem::McsConnectResponse(McsConnectResponse {}); assert_eq!(item, state.transactions[0].item); @@ -595,7 +595,7 @@ mod tests { fn test_parse_tc_other() { let buf: &[u8] = &[0x03, 0x00, 0x00, 0x01, 0x00]; let mut state = RdpState::new(); - assert_eq!(AppLayerResult::err(), state.parse_tc(&buf)); + assert_eq!(AppLayerResult::err(), state.parse_tc(buf)); } #[test] diff --git a/rust/src/sip/log.rs b/rust/src/sip/log.rs index d7efbd8927..792acfa490 100644 --- a/rust/src/sip/log.rs +++ b/rust/src/sip/log.rs @@ -30,7 +30,7 @@ fn log(tx: &SIPTransaction, js: &mut JsonBuilder) -> Result<(), JsonError> { } if let Some(req_line) = &tx.request_line { - js.set_string("request_line", &req_line)?; + js.set_string("request_line", req_line)?; } if let Some(resp) = &tx.response { @@ -40,7 +40,7 @@ fn log(tx: &SIPTransaction, js: &mut JsonBuilder) -> Result<(), JsonError> { } if let Some(resp_line) = &tx.response_line { - js.set_string("response_line", &resp_line)?; + js.set_string("response_line", resp_line)?; } js.close()?; diff --git a/rust/src/sip/sip.rs b/rust/src/sip/sip.rs index d725c195bf..0a83e84581 100755 --- a/rust/src/sip/sip.rs +++ b/rust/src/sip/sip.rs @@ -83,7 +83,7 @@ impl SIPState { let tx = self .transactions .iter() - .position(|ref tx| tx.id == tx_id + 1); + .position(|tx| tx.id == tx_id + 1); debug_assert!(tx != None); if let Some(idx) = tx { let _ = self.transactions.remove(idx); diff --git a/rust/src/smb/auth.rs b/rust/src/smb/auth.rs index fd7bc27421..f90ab0ae61 100644 --- a/rust/src/smb/auth.rs +++ b/rust/src/smb/auth.rs @@ -123,7 +123,7 @@ fn parse_secblob_spnego(blob: &[u8]) -> Option } } }, - BerObjectContent::OctetString(ref os) => { + BerObjectContent::OctetString(os) => { if have_kerberos { match parse_kerberos5_request(os) { Ok((_, t)) => { diff --git a/rust/src/smb/dcerpc.rs b/rust/src/smb/dcerpc.rs index 9d44b39944..c379189fc3 100644 --- a/rust/src/smb/dcerpc.rs +++ b/rust/src/smb/dcerpc.rs @@ -199,7 +199,7 @@ pub fn smb_write_dcerpc_record<'b>(state: &mut SMBState, dcer.packet_type, tx.id, tx); if let Some(SMBTransactionTypeData::DCERPC(ref mut tdn)) = tx.type_data { SCLogDebug!("additional frag of size {}", recr.data.len()); - tdn.stub_data_ts.extend_from_slice(&recr.data); + tdn.stub_data_ts.extend_from_slice(recr.data); tdn.frag_cnt_ts += 1; SCLogDebug!("stub_data now {}", tdn.stub_data_ts.len()); } @@ -233,7 +233,7 @@ pub fn smb_write_dcerpc_record<'b>(state: &mut SMBState, SCLogDebug!("DCERPC: REQUEST {:?}", recr); if let Some(SMBTransactionTypeData::DCERPC(ref mut tdn)) = tx.type_data { SCLogDebug!("first frag size {}", recr.data.len()); - tdn.stub_data_ts.extend_from_slice(&recr.data); + tdn.stub_data_ts.extend_from_slice(recr.data); tdn.opnum = recr.opnum; tdn.frag_cnt_ts += 1; SCLogDebug!("DCERPC: REQUEST opnum {} stub data len {}", @@ -397,7 +397,7 @@ fn dcerpc_response_handle<'b>(tx: &mut SMBTransaction, if let Some(SMBTransactionTypeData::DCERPC(ref mut tdn)) = tx.type_data { SCLogDebug!("CMD 11 found at tx {}", tx.id); tdn.set_result(DCERPC_TYPE_RESPONSE); - tdn.stub_data_tc.extend_from_slice(&respr.data); + tdn.stub_data_tc.extend_from_slice(respr.data); tdn.frag_cnt_tc += 1; } tx.vercmd.set_ntstatus(ntstatus); @@ -452,7 +452,7 @@ pub fn smb_read_dcerpc_record<'b>(state: &mut SMBState, None => Vec::new(), }; SCLogDebug!("indata {} prevdata {}", indata.len(), prevdata.len()); - prevdata.extend_from_slice(&indata); + prevdata.extend_from_slice(indata); let data = prevdata; let mut malformed = false; diff --git a/rust/src/smb/files.rs b/rust/src/smb/files.rs index 0b9339d191..56567bafef 100644 --- a/rust/src/smb/files.rs +++ b/rust/src/smb/files.rs @@ -51,7 +51,7 @@ pub fn filetracker_newchunk(ft: &mut FileTransferTracker, files: &mut FileContai { match unsafe {SURICATA_SMB_FILE_CONFIG} { Some(sfcm) => { - ft.new_chunk(sfcm, files, flags, &name, data, chunk_offset, + ft.new_chunk(sfcm, files, flags, name, data, chunk_offset, chunk_size, fill_bytes, is_last, xid); } None => panic!("no SURICATA_SMB_FILE_CONFIG"), } diff --git a/rust/src/smb/log.rs b/rust/src/smb/log.rs index 162dbe3202..156d279511 100644 --- a/rust/src/smb/log.rs +++ b/rust/src/smb/log.rs @@ -70,13 +70,13 @@ fn smb_common_header(jsb: &mut JsonBuilder, state: &SMBState, tx: &SMBTransactio if state.dialect != 0 { let dialect = &smb2_dialect_string(state.dialect); - jsb.set_string("dialect", &dialect)?; + jsb.set_string("dialect", dialect)?; } else { let dialect = match &state.dialect_vec { - &Some(ref d) => str::from_utf8(&d).unwrap_or("invalid"), + &Some(ref d) => str::from_utf8(d).unwrap_or("invalid"), &None => "unknown", }; - jsb.set_string("dialect", &dialect)?; + jsb.set_string("dialect", dialect)?; } match tx.vercmd.get_version() { @@ -159,7 +159,7 @@ fn smb_common_header(jsb: &mut JsonBuilder, state: &SMBState, tx: &SMBTransactio jsb.set_string("realm", &ticket.realm.0)?; jsb.open_array("snames")?; for sname in ticket.sname.name_string.iter() { - jsb.append_string(&sname)?; + jsb.append_string(sname)?; } jsb.close()?; jsb.close()?; @@ -231,14 +231,14 @@ fn smb_common_header(jsb: &mut JsonBuilder, state: &SMBState, tx: &SMBTransactio if x.smb_ver == 1 { jsb.open_array("client_dialects")?; for d in &x.dialects { - let dialect = String::from_utf8_lossy(&d); + let dialect = String::from_utf8_lossy(d); jsb.append_string(&dialect)?; } jsb.close()?; } else if x.smb_ver == 2 { jsb.open_array("client_dialects")?; for d in &x.dialects2 { - let dialect = String::from_utf8_lossy(&d); + let dialect = String::from_utf8_lossy(d); jsb.append_string(&dialect)?; } jsb.close()?; @@ -265,11 +265,11 @@ fn smb_common_header(jsb: &mut JsonBuilder, state: &SMBState, tx: &SMBTransactio jsb.open_object("service")?; if let Some(ref s) = x.req_service { - let serv = String::from_utf8_lossy(&s); + let serv = String::from_utf8_lossy(s); jsb.set_string("request", &serv)?; } if let Some(ref s) = x.res_service { - let serv = String::from_utf8_lossy(&s); + let serv = String::from_utf8_lossy(s); jsb.set_string("response", &serv)?; } jsb.close()?; diff --git a/rust/src/smb/nbss_records.rs b/rust/src/smb/nbss_records.rs index 9284587443..7256c8a91d 100644 --- a/rust/src/smb/nbss_records.rs +++ b/rust/src/smb/nbss_records.rs @@ -109,7 +109,7 @@ mod tests { 0x64, 0x0b, 0x66, 0xba, 0x4a, 0xbb, 0x81, 0xe1, 0xea, 0x54, 0xae, 0xb8, 0x66]; - let result = parse_nbss_record(&buff); + let result = parse_nbss_record(buff); match result { Ok((remainder, p)) => { assert_eq!(p.message_type, NBSS_MSGTYPE_SESSION_MESSAGE); @@ -152,7 +152,7 @@ mod tests { 0x64, 0x0b, 0x66, 0xba, 0x4a, 0xbb, 0x81, 0xe1, 0xea, 0x54, 0xae, 0xb8, 0x66]; - let result_not_smb = parse_nbss_record(&buff_not_smb); + let result_not_smb = parse_nbss_record(buff_not_smb); match result_not_smb { Ok((remainder, p_not_smb)) => { assert_eq!(p_not_smb.message_type, NBSS_MSGTYPE_SESSION_MESSAGE); @@ -193,7 +193,7 @@ mod tests { 0x02, 0x08, 0xbd, 0x20, 0x02, 0x08, 0x06, 0x00, 0x02, 0x40, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00]; - let result = parse_nbss_record_partial(&buff); + let result = parse_nbss_record_partial(buff); match result { Ok((remainder, p)) => { assert_eq!(p.message_type, NBSS_MSGTYPE_SESSION_MESSAGE); diff --git a/rust/src/smb/smb.rs b/rust/src/smb/smb.rs index 02ebda70d0..44e8b7c101 100644 --- a/rust/src/smb/smb.rs +++ b/rust/src/smb/smb.rs @@ -1073,7 +1073,7 @@ impl SMBState { for tx in &mut self.transactions { let found = match tx.type_data { Some(SMBTransactionTypeData::CREATE(ref _d)) => { - tx.hdr.compare(&hdr) + tx.hdr.compare(hdr) }, _ => { false }, }; @@ -1116,7 +1116,7 @@ impl SMBState { _ => { ("UNKNOWN", false) }, }; SCLogDebug!("service {} is_dcerpc {}", name, is_dcerpc); - (&name, is_dcerpc) + (name, is_dcerpc) } fn post_gap_housekeeping_for_files(&mut self) @@ -1268,12 +1268,12 @@ impl SMBState { Ok((output, ref nbss_part_hdr)) => { SCLogDebug!("parse_nbss_record_partial ok, output len {}", output.len()); if nbss_part_hdr.message_type == NBSS_MSGTYPE_SESSION_MESSAGE { - match parse_smb_version(&nbss_part_hdr.data) { + match parse_smb_version(nbss_part_hdr.data) { Ok((_, ref smb)) => { SCLogDebug!("SMB {:?}", smb); if smb.version == 0xff_u8 { // SMB1 SCLogDebug!("SMBv1 record"); - match parse_smb_record(&nbss_part_hdr.data) { + match parse_smb_record(nbss_part_hdr.data) { Ok((_, ref r)) => { if r.command == SMB1_COMMAND_WRITE_ANDX { // see if it's a write to a pipe. We only handle those @@ -1298,7 +1298,7 @@ impl SMBState { } else if smb.version == 0xfe_u8 { // SMB2 SCLogDebug!("NBSS record {:?}", nbss_part_hdr); SCLogDebug!("SMBv2 record"); - match parse_smb2_request_record(&nbss_part_hdr.data) { + match parse_smb2_request_record(nbss_part_hdr.data) { Ok((_, ref smb_record)) => { SCLogDebug!("SMB2: partial record {}", &smb2_command_string(smb_record.command)); @@ -1386,12 +1386,12 @@ impl SMBState { if nbss_hdr.message_type == NBSS_MSGTYPE_SESSION_MESSAGE { // we have the full records size worth of data, // let's parse it - match parse_smb_version(&nbss_hdr.data) { + match parse_smb_version(nbss_hdr.data) { Ok((_, ref smb)) => { SCLogDebug!("SMB {:?}", smb); if smb.version == 0xff_u8 { // SMB1 SCLogDebug!("SMBv1 record"); - match parse_smb_record(&nbss_hdr.data) { + match parse_smb_record(nbss_hdr.data) { Ok((_, ref smb_record)) => { smb1_request_record(self, smb_record); }, @@ -1404,7 +1404,7 @@ impl SMBState { let mut nbss_data = nbss_hdr.data; while nbss_data.len() > 0 { SCLogDebug!("SMBv2 record"); - match parse_smb2_request_record(&nbss_data) { + match parse_smb2_request_record(nbss_data) { Ok((nbss_data_rem, ref smb_record)) => { SCLogDebug!("nbss_data_rem {}", nbss_data_rem.len()); @@ -1421,7 +1421,7 @@ impl SMBState { let mut nbss_data = nbss_hdr.data; while nbss_data.len() > 0 { SCLogDebug!("SMBv3 transform record"); - match parse_smb3_transform_record(&nbss_data) { + match parse_smb3_transform_record(nbss_data) { Ok((nbss_data_rem, ref _smb3_record)) => { nbss_data = nbss_data_rem; }, @@ -1510,12 +1510,12 @@ impl SMBState { Ok((output, ref nbss_part_hdr)) => { SCLogDebug!("parse_nbss_record_partial ok, output len {}", output.len()); if nbss_part_hdr.message_type == NBSS_MSGTYPE_SESSION_MESSAGE { - match parse_smb_version(&nbss_part_hdr.data) { + match parse_smb_version(nbss_part_hdr.data) { Ok((_, ref smb)) => { SCLogDebug!("SMB {:?}", smb); if smb.version == 255u8 { // SMB1 SCLogDebug!("SMBv1 record"); - match parse_smb_record(&nbss_part_hdr.data) { + match parse_smb_record(nbss_part_hdr.data) { Ok((_, ref r)) => { SCLogDebug!("SMB1: partial record {}", r.command); @@ -1538,7 +1538,7 @@ impl SMBState { } } else if smb.version == 254u8 { // SMB2 SCLogDebug!("SMBv2 record"); - match parse_smb2_response_record(&nbss_part_hdr.data) { + match parse_smb2_response_record(nbss_part_hdr.data) { Ok((_, ref smb_record)) => { SCLogDebug!("SMB2: partial record {}", &smb2_command_string(smb_record.command)); @@ -1625,12 +1625,12 @@ impl SMBState { if nbss_hdr.message_type == NBSS_MSGTYPE_SESSION_MESSAGE { // we have the full records size worth of data, // let's parse it - match parse_smb_version(&nbss_hdr.data) { + match parse_smb_version(nbss_hdr.data) { Ok((_, ref smb)) => { SCLogDebug!("SMB {:?}", smb); if smb.version == 0xff_u8 { // SMB1 SCLogDebug!("SMBv1 record"); - match parse_smb_record(&nbss_hdr.data) { + match parse_smb_record(nbss_hdr.data) { Ok((_, ref smb_record)) => { smb1_response_record(self, smb_record); }, @@ -1643,7 +1643,7 @@ impl SMBState { let mut nbss_data = nbss_hdr.data; while nbss_data.len() > 0 { SCLogDebug!("SMBv2 record"); - match parse_smb2_response_record(&nbss_data) { + match parse_smb2_response_record(nbss_data) { Ok((nbss_data_rem, ref smb_record)) => { smb2_response_record(self, smb_record); nbss_data = nbss_data_rem; @@ -1658,7 +1658,7 @@ impl SMBState { let mut nbss_data = nbss_hdr.data; while nbss_data.len() > 0 { SCLogDebug!("SMBv3 transform record"); - match parse_smb3_transform_record(&nbss_data) { + match parse_smb3_transform_record(nbss_data) { Ok((nbss_data_rem, ref _smb3_record)) => { nbss_data = nbss_data_rem; }, @@ -1891,7 +1891,7 @@ pub extern "C" fn rs_smb_parse_response_tcp_gap( fn smb_probe_tcp_midstream(direction: u8, slice: &[u8], rdir: *mut u8) -> i8 { match search_smb_record(slice) { - Ok((_, ref data)) => { + Ok((_, data)) => { SCLogDebug!("smb found"); match parse_smb_version(data) { Ok((_, ref smb)) => { diff --git a/rust/src/smb/smb1.rs b/rust/src/smb/smb1.rs index 58f6aded77..45136f6949 100644 --- a/rust/src/smb/smb1.rs +++ b/rust/src/smb/smb1.rs @@ -148,7 +148,7 @@ fn smb1_close_file(state: &mut SMBState, fid: &Vec) { // we can have created 2 txs for a FID: one for reads // and one for writes. So close both. - match state.get_file_tx_by_fuid(&fid, STREAM_TOSERVER) { + match state.get_file_tx_by_fuid(fid, STREAM_TOSERVER) { Some((tx, files, flags)) => { SCLogDebug!("found tx {}", tx.id); if let Some(SMBTransactionTypeData::FILE(ref mut tdf)) = tx.type_data { @@ -163,7 +163,7 @@ fn smb1_close_file(state: &mut SMBState, fid: &Vec) }, None => { }, } - match state.get_file_tx_by_fuid(&fid, STREAM_TOCLIENT) { + match state.get_file_tx_by_fuid(fid, STREAM_TOCLIENT) { Some((tx, files, flags)) => { SCLogDebug!("found tx {}", tx.id); if let Some(SMBTransactionTypeData::FILE(ref mut tdf)) = tx.type_data { @@ -634,7 +634,7 @@ fn smb1_response_record_one<'b>(state: &mut SMBState, r: &SmbRecord<'b>, command let have_tx = match command { SMB1_COMMAND_READ_ANDX => { - smb1_read_response_record(state, &r, *andx_offset); + smb1_read_response_record(state, r, *andx_offset); true // tx handling in func }, SMB1_COMMAND_NEGOTIATE_PROTOCOL => { @@ -895,7 +895,7 @@ pub fn smb1_trans_request_record<'b>(state: &mut SMBState, r: &SmbRecord<'b>) SCLogDebug!("SMBv1 TRANS TO PIPE"); let hdr = SMBCommonHdr::from1(r, SMBHDR_TYPE_HEADER); let vercmd = SMBVerCmdStat::new1(r.command); - smb_write_dcerpc_record(state, vercmd, hdr, &rd.data.data); + smb_write_dcerpc_record(state, vercmd, hdr, rd.data.data); } }, _ => { @@ -940,7 +940,7 @@ pub fn smb1_trans_response_record<'b>(state: &mut SMBState, r: &SmbRecord<'b>) SCLogDebug!("SMBv1 TRANS TO PIPE"); let hdr = SMBCommonHdr::from1(r, SMBHDR_TYPE_HEADER); let vercmd = SMBVerCmdStat::new1_with_ntstatus(r.command, r.nt_status); - smb_read_dcerpc_record(state, vercmd, hdr, &fid, &rd.data); + smb_read_dcerpc_record(state, vercmd, hdr, &fid, rd.data); } }, _ => { @@ -1004,7 +1004,7 @@ pub fn smb1_write_request_record<'b>(state: &mut SMBState, r: &SmbRecord<'b>, an SCLogDebug!("SMBv1 WRITE TO PIPE"); let hdr = SMBCommonHdr::from1(r, SMBHDR_TYPE_HEADER); let vercmd = SMBVerCmdStat::new1_with_ntstatus(command, r.nt_status); - smb_write_dcerpc_record(state, vercmd, hdr, &rd.data); + smb_write_dcerpc_record(state, vercmd, hdr, rd.data); } else { let (tx, files, flags) = state.new_file_tx(&file_fid, &file_name, STREAM_TOSERVER); if let Some(SMBTransactionTypeData::FILE(ref mut tdf)) = tx.type_data { @@ -1113,7 +1113,7 @@ pub fn smb1_read_response_record<'b>(state: &mut SMBState, r: &SmbRecord<'b>, an // hack: we store fid with ssn id mixed in, but here we want the // real thing instead. let pure_fid = if file_fid.len() > 2 { &file_fid[0..2] } else { &[] }; - smb_read_dcerpc_record(state, vercmd, hdr, &pure_fid, &rd.data); + smb_read_dcerpc_record(state, vercmd, hdr, pure_fid, rd.data); } state.set_file_left(STREAM_TOCLIENT, rd.len, rd.data.len() as u32, file_fid.to_vec()); diff --git a/rust/src/smb/smb1_records.rs b/rust/src/smb/smb1_records.rs index 760daba00d..ec8f1f3052 100644 --- a/rust/src/smb/smb1_records.rs +++ b/rust/src/smb/smb1_records.rs @@ -372,7 +372,7 @@ pub fn parse_smb_trans_request_record<'a, 'b>(i: &'a[u8], r: &SmbRecord<'b>) let res = SmbRecordTransRequest { params: params, pipe: pipe, txname: n, data: recdata, }; - Ok((&rem, res)) + Ok((rem, res)) } diff --git a/rust/src/smb/smb2.rs b/rust/src/smb/smb2.rs index c25cf0cca6..f510dead4b 100644 --- a/rust/src/smb/smb2.rs +++ b/rust/src/smb/smb2.rs @@ -280,7 +280,7 @@ pub fn smb2_write_request_record<'b>(state: &mut SMBState, r: &Smb2Record<'b>) _ => { (Vec::new(), false) }, }; let mut is_dcerpc = if is_pipe || (share_name.len() == 0 && !is_pipe) { - match state.get_service_for_guid(&wr.guid) { + match state.get_service_for_guid(wr.guid) { (_, x) => x, } } else { @@ -498,7 +498,7 @@ pub fn smb2_request_record<'b>(state: &mut SMBState, r: &Smb2Record<'b>) } }, SMB2_COMMAND_WRITE => { - smb2_write_request_record(state, &r); + smb2_write_request_record(state, r); true // write handling creates both file tx and generic tx }, SMB2_COMMAND_CLOSE => { @@ -604,7 +604,7 @@ pub fn smb2_response_record<'b>(state: &mut SMBState, r: &Smb2Record<'b>) SMB2_COMMAND_READ => { if r.nt_status == SMB_NTSTATUS_SUCCESS || r.nt_status == SMB_NTSTATUS_BUFFER_OVERFLOW { - smb2_read_response_record(state, &r); + smb2_read_response_record(state, r); false } else if r.nt_status == SMB_NTSTATUS_END_OF_FILE { diff --git a/rust/src/smb/smb2_ioctl.rs b/rust/src/smb/smb2_ioctl.rs index 22e6de0395..cb6bb5a9b1 100644 --- a/rust/src/smb/smb2_ioctl.rs +++ b/rust/src/smb/smb2_ioctl.rs @@ -62,7 +62,7 @@ pub fn smb2_ioctl_request_record<'b>(state: &mut SMBState, r: &Smb2Record<'b>) match parse_smb2_request_ioctl(r.data) { Ok((_, rd)) => { SCLogDebug!("IOCTL request data: {:?}", rd); - let is_dcerpc = rd.is_pipe && match state.get_service_for_guid(&rd.guid) { + let is_dcerpc = rd.is_pipe && match state.get_service_for_guid(rd.guid) { (_, x) => x, }; if is_dcerpc { @@ -90,7 +90,7 @@ pub fn smb2_ioctl_response_record<'b>(state: &mut SMBState, r: &Smb2Record<'b>) Ok((_, rd)) => { SCLogDebug!("IOCTL response data: {:?}", rd); - let is_dcerpc = rd.is_pipe && match state.get_service_for_guid(&rd.guid) { + let is_dcerpc = rd.is_pipe && match state.get_service_for_guid(rd.guid) { (_, x) => x, }; if is_dcerpc { diff --git a/rust/src/snmp/detect.rs b/rust/src/snmp/detect.rs index f6ceedf051..3bf38add4c 100644 --- a/rust/src/snmp/detect.rs +++ b/rust/src/snmp/detect.rs @@ -34,7 +34,7 @@ pub unsafe extern "C" fn rs_snmp_tx_get_community(tx: &mut SNMPTransaction, { match tx.community { Some(ref c) => { - *buf = (&c).as_ptr(); + *buf = c.as_ptr(); *len = c.len() as u32; }, None => () diff --git a/rust/src/snmp/snmp.rs b/rust/src/snmp/snmp.rs index 608c83356a..f4d2e814db 100644 --- a/rust/src/snmp/snmp.rs +++ b/rust/src/snmp/snmp.rs @@ -218,7 +218,7 @@ impl<'a> SNMPState<'a> { } fn free_tx(&mut self, tx_id: u64) { - let tx = self.transactions.iter().position(|ref tx| tx.id == tx_id + 1); + let tx = self.transactions.iter().position(|tx| tx.id == tx_id + 1); debug_assert!(tx != None); if let Some(idx) = tx { let _ = self.transactions.remove(idx); diff --git a/rust/src/tftp/tftp.rs b/rust/src/tftp/tftp.rs index 8b62f2eae6..e64d4843b9 100644 --- a/rust/src/tftp/tftp.rs +++ b/rust/src/tftp/tftp.rs @@ -52,7 +52,7 @@ impl TFTPState { } fn free_tx(&mut self, tx_id: u64) { - let tx = self.transactions.iter().position(|ref tx| tx.id == tx_id + 1); + let tx = self.transactions.iter().position(|tx| tx.id == tx_id + 1); debug_assert!(tx != None); if let Some(idx) = tx { let _ = self.transactions.remove(idx);