#[derive(Debug)]
pub struct DCERPCTransaction {
- pub id: u32, // internal transaction ID
+ pub id: u64, // internal transaction ID
pub ctxid: u16,
pub opnum: u16,
pub first_request_seen: u8,
pub pad: u8,
pub padleft: u16,
pub bytes_consumed: u16,
- pub tx_id: u32,
+ pub tx_id: u64,
pub query_completed: bool,
pub data_needed_for_dir: u8,
pub prev_dir: u8,
///
/// Return value:
/// Option mutable reference to DCERPCTransaction
- pub fn get_tx(&mut self, tx_id: u32) -> Option<&mut DCERPCTransaction> {
+ pub fn get_tx(&mut self, tx_id: u64) -> Option<&mut DCERPCTransaction> {
for tx in &mut self.transactions {
let found = tx.id == tx_id;
if found {
#[no_mangle]
pub extern "C" fn rs_dcerpc_get_tx(
- vtx: *mut std::os::raw::c_void, tx_id: u32,
+ vtx: *mut std::os::raw::c_void, tx_id: u64,
) -> *mut DCERPCTransaction {
let dce_state = cast_pointer!(vtx, DCERPCState);
match dce_state.get_tx(tx_id) {
}
#[no_mangle]
-pub extern "C" fn rs_dcerpc_get_tx_cnt(vtx: *mut std::os::raw::c_void) -> u32 {
+pub extern "C" fn rs_dcerpc_get_tx_cnt(vtx: *mut std::os::raw::c_void) -> u64 {
let dce_state = cast_pointer!(vtx, DCERPCState);
dce_state.tx_id
}