rust/detect: Create detect module for rule parsing

This commit creates a module named "detect" for rule parsing logic. As
part of this commit, detect.rs is moved from its toplevel position into
the new module. Thus, use crate::detect::detect to refer to items within
detect.rs (instead of create::detect).

Ticket: 5077
pull/7921/head
Jeff Lucovsky 4 years ago committed by Victor Julien
parent ccd1063e43
commit 8bfe427a74

@ -19,7 +19,7 @@ use super::dcerpc::{
DCERPCState, DCERPCTransaction, DCERPC_TYPE_REQUEST, DCERPC_TYPE_RESPONSE, DCERPCState, DCERPCTransaction, DCERPC_TYPE_REQUEST, DCERPC_TYPE_RESPONSE,
DCERPC_UUID_ENTRY_FLAG_FF, DCERPC_UUID_ENTRY_FLAG_FF,
}; };
use crate::detect::{detect_match_uint, detect_parse_uint, DetectUintData}; use crate::detect::detect::{detect_match_uint, detect_parse_uint, DetectUintData};
use std::ffi::CStr; use std::ffi::CStr;
use std::os::raw::{c_char, c_void}; use std::os::raw::{c_char, c_void};
use uuid::Uuid; use uuid::Uuid;
@ -295,7 +295,7 @@ pub unsafe extern "C" fn rs_dcerpc_opnum_free(ptr: *mut c_void) {
#[cfg(test)] #[cfg(test)]
mod test { mod test {
use super::*; use super::*;
use crate::detect::DetectUintMode; use crate::detect::detect::DetectUintMode;
fn extract_op_version(i: &str) -> Result<(DetectUintMode, u16), ()> { fn extract_op_version(i: &str) -> Result<(DetectUintMode, u16), ()> {
match detect_parse_uint(i) { match detect_parse_uint(i) {

@ -17,8 +17,8 @@
// Author: Jeff Lucovsky <jlucovsky@oisf.net> // Author: Jeff Lucovsky <jlucovsky@oisf.net>
use crate::detect_parser::error::RuleParseError; use crate::detect::error::RuleParseError;
use crate::detect_parser::parser::{parse_token, take_until_whitespace}; use crate::detect::parser::{parse_token, take_until_whitespace};
use std::ffi::{CStr, CString}; use std::ffi::{CStr, CString};
use std::os::raw::c_char; use std::os::raw::c_char;

@ -16,5 +16,6 @@
*/ */
pub mod byte_math; pub mod byte_math;
pub mod detect;
pub mod error; pub mod error;
pub mod parser; pub mod parser;

@ -15,7 +15,7 @@
* 02110-1301, USA. * 02110-1301, USA.
*/ */
use crate::detect_parser::error::RuleParseError; use crate::detect::error::RuleParseError;
use nom7::bytes::complete::is_not; use nom7::bytes::complete::is_not;
use nom7::character::complete::multispace0; use nom7::character::complete::multispace0;

@ -20,7 +20,7 @@ use super::http2::{
}; };
use super::parser; use super::parser;
use crate::core::Direction; use crate::core::Direction;
use crate::detect::{detect_match_uint, DetectUintData}; use crate::detect::detect::{detect_match_uint, DetectUintData};
use std::ffi::CStr; use std::ffi::CStr;
use std::str::FromStr; use std::str::FromStr;

@ -17,7 +17,7 @@
use super::huffman; use super::huffman;
use crate::common::nom7::bits; use crate::common::nom7::bits;
use crate::detect::{detect_parse_uint, DetectUintData}; use crate::detect::detect::{detect_parse_uint, DetectUintData};
use crate::http2::http2::{HTTP2DynTable, HTTP2_MAX_TABLESIZE}; use crate::http2::http2::{HTTP2DynTable, HTTP2_MAX_TABLESIZE};
use nom7::bits::streaming::take as take_bits; use nom7::bits::streaming::take as take_bits;
use nom7::branch::alt; use nom7::branch::alt;
@ -749,7 +749,7 @@ pub fn http2_parse_frame_settings(i: &[u8]) -> IResult<&[u8], Vec<HTTP2FrameSett
mod tests { mod tests {
use super::*; use super::*;
use crate::detect::DetectUintMode; use crate::detect::detect::DetectUintMode;
#[test] #[test]
fn test_http2_parse_header() { fn test_http2_parse_header() {

@ -113,7 +113,6 @@ pub mod smb;
pub mod krb; pub mod krb;
pub mod dcerpc; pub mod dcerpc;
pub mod modbus; pub mod modbus;
pub mod detect_parser;
pub mod ike; pub mod ike;
pub mod snmp; pub mod snmp;

@ -20,7 +20,7 @@ use crate::core::*;
use crate::smb::smb::*; use crate::smb::smb::*;
use crate::dcerpc::detect::{DCEIfaceData, DCEOpnumData, DETECT_DCE_OPNUM_RANGE_UNINITIALIZED}; use crate::dcerpc::detect::{DCEIfaceData, DCEOpnumData, DETECT_DCE_OPNUM_RANGE_UNINITIALIZED};
use crate::dcerpc::dcerpc::DCERPC_TYPE_REQUEST; use crate::dcerpc::dcerpc::DCERPC_TYPE_REQUEST;
use crate::detect::detect_match_uint; use crate::detect::detect::detect_match_uint;
#[no_mangle] #[no_mangle]
pub unsafe extern "C" fn rs_smb_tx_get_share(tx: &mut SMBTransaction, pub unsafe extern "C" fn rs_smb_tx_get_share(tx: &mut SMBTransaction,

Loading…
Cancel
Save