sip: support AppLayerTxData

pull/5169/head
Victor Julien 5 years ago
parent cc1210c956
commit 4ff51a0e07

@ -56,7 +56,7 @@ pub struct SIPTransaction {
pub response_line: Option<String>,
de_state: Option<*mut core::DetectEngineState>,
events: *mut core::AppLayerDecoderEvents,
logged: applayer::LoggerFlags,
tx_data: applayer::AppLayerTxData,
}
impl SIPState {
@ -153,7 +153,7 @@ impl SIPTransaction {
request_line: None,
response_line: None,
events: std::ptr::null_mut(),
logged: applayer::LoggerFlags::new(),
tx_data: applayer::AppLayerTxData::new(),
}
}
}
@ -219,25 +219,6 @@ pub extern "C" fn rs_sip_tx_get_alstate_progress(
1
}
#[no_mangle]
pub extern "C" fn rs_sip_tx_set_logged(
_state: *mut std::os::raw::c_void,
tx: *mut std::os::raw::c_void,
logged: u32,
) {
let tx = cast_pointer!(tx, SIPTransaction);
tx.logged.set(logged);
}
#[no_mangle]
pub extern "C" fn rs_sip_tx_get_logged(
_state: *mut std::os::raw::c_void,
tx: *mut std::os::raw::c_void,
) -> u32 {
let tx = cast_pointer!(tx, SIPTransaction);
return tx.logged.get();
}
#[no_mangle]
pub extern "C" fn rs_sip_state_set_tx_detect_state(
tx: *mut std::os::raw::c_void,
@ -377,6 +358,8 @@ pub extern "C" fn rs_sip_parse_response(
state.parse_response(buf).into()
}
export_tx_data_get!(rs_sip_get_tx_data, SIPTransaction);
const PARSER_NAME: &'static [u8] = b"sip\0";
#[no_mangle]
@ -399,8 +382,8 @@ pub unsafe extern "C" fn rs_sip_register_parser() {
get_tx: rs_sip_state_get_tx,
tx_get_comp_st: rs_sip_state_progress_completion_status,
tx_get_progress: rs_sip_tx_get_alstate_progress,
get_tx_logged: Some(rs_sip_tx_get_logged),
set_tx_logged: Some(rs_sip_tx_set_logged),
get_tx_logged: None,
set_tx_logged: None,
get_de_state: rs_sip_state_get_tx_detect_state,
set_de_state: rs_sip_state_set_tx_detect_state,
get_events: Some(rs_sip_state_get_events),
@ -412,7 +395,7 @@ pub unsafe extern "C" fn rs_sip_register_parser() {
get_tx_iterator: None,
get_tx_detect_flags: None,
set_tx_detect_flags: None,
get_tx_data: None,
get_tx_data: Some(rs_sip_get_tx_data),
apply_tx_config: None,
};

Loading…
Cancel
Save