pub struct TAINT { /* private fields */ }Expand description
Direct access to the taint2 C API when direct use is needed
Methods from Deref<Target = Taint>§
Sourcepub fn ensure_init(&self)
pub fn ensure_init(&self)
Load the plugin and initialize it if it hasn’t been loaded already.
pub fn taint2_enable_taint(&self)
pub fn taint2_enable_tainted_pointer(&self)
pub fn taint2_enabled(&self) -> bool
pub fn taint2_label_addr(&self, a: Addr, offset: c_int, label: u32)
pub fn taint2_label_ram(&self, ram_offset: u64, label: u32)
pub fn taint2_label_reg(&self, reg_num: c_int, offset: c_int, label: u32)
pub fn taint2_label_io(&self, ia: u64, label: u32)
pub fn taint2_label_ram_additive(&self, ram_offset: u64, label: u32)
pub fn taint2_label_reg_additive( &self, reg_num: c_int, offset: c_int, label: u32, )
pub fn taint2_label_io_additive(&self, ia: u64, label: u32)
pub fn taint2_add_taint_ram_pos( &self, cpu: &mut CPUState, addr: u64, length: u32, start_label: u32, )
pub fn taint2_add_taint_ram_single_label( &self, cpu: &mut CPUState, addr: u64, length: u32, label: c_long, )
pub fn taint2_delete_ram(&self, ram_offset: u64)
pub fn taint2_delete_reg(&self, reg_num: c_int, offset: c_int)
pub fn taint2_delete_io(&self, ia: u64)
pub fn taint2_query_pandalog(&self, addr: Addr, offset: u32) -> *mut c_void
pub fn pandalog_taint_query_free(&self, tq: *mut c_void)
pub fn taint2_query(&self, addr: Addr) -> u32
pub fn taint2_query_reg(&self, reg_num: c_int, offset: c_int) -> u32
pub fn taint2_query_ram(&self, ram_offset: u64) -> u32
pub fn taint2_query_laddr(&self, la: u64, off: u64) -> u32
pub fn taint2_query_io(&self, ia: u64) -> u32
pub fn taint2_query_llvm(&self, reg_num: c_int, offset: c_int) -> u32
pub fn taint2_query_set_a( &self, a: Addr, out: &mut *mut u32, outsz: &mut u32, ) -> u32
pub fn taint2_query_set(&self, a: Addr, out: *mut u32)
pub fn taint2_query_set_ram(&self, ram_offset: u64, out: *mut u32)
pub fn taint2_query_set_reg(&self, reg_num: c_int, offset: c_int, out: *mut u32)
pub fn taint2_query_set_io(&self, ia: u64, out: *mut u32)
pub fn taint2_query_tcn(&self, a: Addr) -> u32
pub fn taint2_query_tcn_ram(&self, ram_offset: u64) -> u32
pub fn taint2_query_tcn_reg(&self, reg_num: c_int, offset: c_int) -> u32
pub fn taint2_query_tcn_io(&self, ia: u64) -> u32
pub fn taint2_query_tcn_llvm(&self, reg_num: c_int, offset: c_int) -> u32
pub fn taint2_query_cb_mask(&self, a: Addr, size: u8) -> u64
pub fn taint2_labelset_addr_iter( &self, addr: Addr, app: LabelSetVisitorRawFn, stuff: *mut c_void, )
pub fn taint2_labelset_ram_iter( &self, ram_offset: u64, app: LabelSetVisitorRawFn, stuff: *mut c_void, )
pub fn taint2_labelset_reg_iter( &self, reg_num: c_int, offset: c_int, app: LabelSetVisitorRawFn, stuff: *mut c_void, )
pub fn taint2_labelset_io_iter( &self, ia: u64, app: LabelSetVisitorRawFn, stuff: *mut c_void, )
pub fn taint2_labelset_llvm_iter( &self, reg_num: c_int, offset: c_int, app: LabelSetVisitorRawFn, stuff: *mut c_void, )
pub fn taint2_num_labels_applied(&self) -> u32
pub fn taint2_track_taint_state(&self)
pub fn taint2_query_results_iter(&self, qr: &mut QueryResult)
pub fn taint2_query_result_next( &self, qr: &mut QueryResult, done: &mut bool, ) -> u32
pub fn taint2_query_laddr_full( &self, reg_num: u64, offset: u64, qr: &mut QueryResult, )
pub fn taint2_query_reg_full( &self, reg_num: u32, offset: u32, qr: &mut QueryResult, )
pub fn taint2_query_ram_full(&self, addr: u64, qr: &mut QueryResult)
Trait Implementations§
Auto Trait Implementations§
impl Freeze for TAINT
impl RefUnwindSafe for TAINT
impl Send for TAINT
impl Sync for TAINT
impl Unpin for TAINT
impl UnwindSafe for TAINT
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more