|
|
|
|
@ -77,6 +77,8 @@ pub type SCLogMessageFunc =
|
|
|
|
|
pub type DetectEngineStateFreeFunc =
|
|
|
|
|
extern "C" fn(state: *mut DetectEngineState);
|
|
|
|
|
|
|
|
|
|
pub type AppLayerParserTriggerRawStreamReassemblyFunc =
|
|
|
|
|
extern "C" fn (flow: *const Flow, direction: i32);
|
|
|
|
|
pub type AppLayerDecoderEventsSetEventRawFunc =
|
|
|
|
|
extern "C" fn (events: *mut *mut AppLayerDecoderEvents,
|
|
|
|
|
event: u8);
|
|
|
|
|
@ -129,6 +131,7 @@ pub struct SuricataContext {
|
|
|
|
|
DetectEngineStateFree: DetectEngineStateFreeFunc,
|
|
|
|
|
AppLayerDecoderEventsSetEventRaw: AppLayerDecoderEventsSetEventRawFunc,
|
|
|
|
|
AppLayerDecoderEventsFreeEvents: AppLayerDecoderEventsFreeEventsFunc,
|
|
|
|
|
pub AppLayerParserTriggerRawStreamReassembly: AppLayerParserTriggerRawStreamReassemblyFunc,
|
|
|
|
|
|
|
|
|
|
pub FileOpenFile: SCFileOpenFileWithId,
|
|
|
|
|
pub FileCloseFile: SCFileCloseFileById,
|
|
|
|
|
@ -176,6 +179,15 @@ pub fn sc_detect_engine_state_free(state: *mut DetectEngineState)
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/// AppLayerParserTriggerRawStreamReassembly wrapper
|
|
|
|
|
pub fn sc_app_layer_parser_trigger_raw_stream_reassembly(flow: *const Flow, direction: i32) {
|
|
|
|
|
unsafe {
|
|
|
|
|
if let Some(c) = SC {
|
|
|
|
|
(c.AppLayerParserTriggerRawStreamReassembly)(flow, direction);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/// AppLayerDecoderEventsSetEventRaw wrapper.
|
|
|
|
|
pub fn sc_app_layer_decoder_events_set_event_raw(
|
|
|
|
|
events: *mut *mut AppLayerDecoderEvents, event: u8)
|
|
|
|
|
|