IDA SDK
Modules | Macros | Functions

Detailed Description

Plugins can use these functions to implement a custom tracing engine.

To step trace, IDA activates the step-by-step feature of the processor, and generates a dbg_trace notification after each step in the current thread. This mechanism is currently only available for plugins !

Modules

 Step trace options
 Flags returned by get_step_trace_options()
 

Macros

#define FT_LOG_RET   0x01
 function tracing will log returning instructions
 
#define BT_LOG_INSTS   0x0001
 log all instructions in the current basic block
 
#define IT_LOG_SAME_IP   0x01
 instruction tracing will log instructions whose IP doesn't change
 

Functions

bool idaapi is_step_trace_enabled (void)
 Get current state of step tracing. More...
 
int idaapi get_step_trace_options (void)
 Get current step tracing options. More...
 
void idaapi set_step_trace_options (int options)
 Modify step tracing options. More...
 
void idaapi request_set_step_trace_options (int options)
 Post a set_step_trace_options() request.
 

Enable/Disable tracing

Enable or disable the step tracing

TypeSynchronous function - available as request
Notificationnone (synchronous function)
Parameters
enable
  • true : enable step tracing
  • false : disable step tracing
  • -1 : temporarily disable step tracing (trace-over breakpoints are conserved: these could re-enable step tracing later)
bool idaapi enable_step_trace (int enable=true)
 
bool disable_step_trace (void)
 
bool idaapi request_enable_step_trace (int enable=true)
 
bool request_disable_step_trace (void)
 

Function Documentation

bool idaapi is_step_trace_enabled ( void  )
inline

Get current state of step tracing.

TypeSynchronous function
Notificationnone (synchronous function)
int idaapi get_step_trace_options ( void  )
inline

Get current step tracing options.

TypeSynchronous function
Notificationnone (synchronous function)
Returns
Step trace options
void idaapi set_step_trace_options ( int  options)
inline

Modify step tracing options.

TypeSynchronous function - available as request
Notificationnone (synchronous function)