rust: add get_tx_iterator to parser registration

pull/3394/head
Jason Ish 6 years ago
parent 14843a7b43
commit da4912dfe7

@ -671,6 +671,7 @@ pub unsafe extern "C" fn rs_register_ikev2_parser() {
get_tx_mpm_id : None,
set_tx_mpm_id : None,
get_files : None,
get_tx_iterator : None,
};
let ip_proto_str = CString::new("udp").unwrap();

@ -627,6 +627,7 @@ pub unsafe extern "C" fn rs_register_krb5_parser() {
get_tx_mpm_id : None,
set_tx_mpm_id : None,
get_files : None,
get_tx_iterator : None,
};
// register UDP parser
let ip_proto_str = CString::new("udp").unwrap();

@ -394,6 +394,7 @@ pub unsafe extern "C" fn rs_register_ntp_parser() {
get_tx_mpm_id : None,
set_tx_mpm_id : None,
get_files : None,
get_tx_iterator : None,
};
let ip_proto_str = CString::new("udp").unwrap();

@ -23,7 +23,7 @@ use core::{DetectEngineState,Flow,AppLayerEventType,AppLayerDecoderEvents,AppPro
use filecontainer::FileContainer;
use libc::{c_void,c_char,c_int};
use applayer::{AppLayerGetTxIterTuple};
/// Rust parser declaration
#[repr(C)]
@ -94,6 +94,9 @@ pub struct RustParser {
/// Function to get files
pub get_files: Option<GetFilesFn>,
/// Function to get the TX iterator
pub get_tx_iterator: Option<GetTxIteratorFn>,
}
@ -140,6 +143,12 @@ pub type LocalStorageFreeFn = extern "C" fn (*mut c_void);
pub type GetTxMpmIDFn = extern "C" fn (*mut c_void) -> u64;
pub type SetTxMpmIDFn = extern "C" fn (*mut c_void, u64) -> c_int;
pub type GetFilesFn = extern "C" fn (*mut c_void, u8) -> *mut FileContainer;
pub type GetTxIteratorFn = extern "C" fn (ipproto: u8, alproto: AppProto,
state: *mut c_void,
min_tx_id: u64,
max_tx_id: u64,
istate: &mut u64)
-> AppLayerGetTxIterTuple;
// Defined in app-layer-register.h
extern {

Loading…
Cancel
Save