IDAPython 9.0
Loading...
Searching...
No Matches
ida_dbg.py File Reference

Classes

class  bpt_vec_t
 Proxy of C++ qvector< bpt_t > class. More...
 
class  tev_reg_values_t
 Proxy of C++ qvector< tev_reg_value_t > class. More...
 
class  tevinforeg_vec_t
 Proxy of C++ qvector< tev_info_reg_t > class. More...
 
class  memreg_infos_t
 Proxy of C++ qvector< memreg_info_t > class. More...
 
class  bptaddrs_t
 Proxy of C++ bptaddrs_t class. More...
 
class  bpt_location_t
 Proxy of C++ bpt_location_t class. More...
 
class  bpt_t
 Proxy of C++ bpt_t class. More...
 
class  tev_info_t
 Proxy of C++ tev_info_t class. More...
 
class  memreg_info_t
 Proxy of C++ memreg_info_t class. More...
 
class  tev_reg_value_t
 Proxy of C++ tev_reg_value_t class. More...
 
class  tev_info_reg_t
 Proxy of C++ tev_info_reg_t class. More...
 
class  eval_ctx_t
 Proxy of C++ eval_ctx_t class. More...
 
class  DBG_Hooks
 Proxy of C++ DBG_Hooks class. More...
 

Namespaces

namespace  ida_dbg
 Contains functions to control the debugging of a process.
 

Functions

"bool" run_to (*args)
 run_to(ea, pid=pid_t(-1), tid=0) -> bool Execute the process until the given address is reached.
 
"bool" request_run_to (*args)
 request_run_to(ea, pid=pid_t(-1), tid=0) -> bool Post a run_to() request.
 
"bool" run_requests ()
 run_requests() -> bool Execute requests until all requests are processed or an asynchronous function is called.
 
"ui_notification_t" get_running_request ()
 get_running_request() -> ui_notification_t Get the current running request.
 
"bool" is_request_running ()
 is_request_running() -> bool Is a request currently running?
 
"dbg_notification_t" get_running_notification ()
 get_running_notification() -> dbg_notification_t Get the notification associated (if any) with the current running request.
 
"void" clear_requests_queue ()
 clear_requests_queue() Clear the queue of waiting requests.
 
"int" get_process_state ()
 get_process_state() -> int Return the state of the currently debugged process.
 
"bool" is_valid_dstate ("int" state)
 is_valid_dstate(state) -> bool
 
"int" set_process_state ("int" newstate, "thid_t *" p_thid, "int" dbginv)
 set_process_state(newstate, p_thid, dbginv) -> int Set new state for the debugged process.
 
"int" invalidate_dbg_state ("int" dbginv)
 invalidate_dbg_state(dbginv) -> int Invalidate cached debugger information.
 
"int" start_process ("char const *" path=None, "char const *" args=None, "char const *" sdir=None)
 start_process(path=None, args=None, sdir=None) -> int Start a process in the debugger.
 
"int" request_start_process ("char const *" path=None, "char const *" args=None, "char const *" sdir=None)
 request_start_process(path=None, args=None, sdir=None) -> int Post a start_process() request.
 
"bool" suspend_process ()
 suspend_process() -> bool Suspend the process in the debugger.
 
"bool" request_suspend_process ()
 request_suspend_process() -> bool Post a suspend_process() request.
 
"bool" continue_process ()
 continue_process() -> bool Continue the execution of the process in the debugger.
 
"bool" request_continue_process ()
 request_continue_process() -> bool Post a continue_process() request.
 
"bool" exit_process ()
 exit_process() -> bool Terminate the debugging of the current process.
 
"bool" request_exit_process ()
 request_exit_process() -> bool Post an exit_process() request.
 
"ssize_t" get_processes ("procinfo_vec_t" proclist)
 get_processes(proclist) -> ssize_t Take a snapshot of running processes and return their description.
 
"int" attach_process (*args)
 attach_process(pid=pid_t(-1), event_id=-1) -> int Attach the debugger to a running process.
 
"int" request_attach_process ("pid_t" pid, "int" event_id)
 request_attach_process(pid, event_id) -> int Post an attach_process() request.
 
"bool" detach_process ()
 detach_process() -> bool Detach the debugger from the debugged process.
 
"bool" request_detach_process ()
 request_detach_process() -> bool Post a detach_process() request.
 
"bool" is_debugger_busy ()
 is_debugger_busy() -> bool Is the debugger busy?.
 
"int" get_thread_qty ()
 get_thread_qty() -> int Get number of threads.
 
"thid_t" getn_thread ("int" n)
 getn_thread(n) -> thid_t Get the ID of a thread.
 
"thid_t" get_current_thread ()
 get_current_thread() -> thid_t Get current thread ID.
 
"char const *" getn_thread_name ("int" n)
 getn_thread_name(n) -> char const * Get the NAME of a thread \sq{Type, Synchronous function, Notification, none (synchronous function)}
 
"bool" select_thread ("thid_t" tid)
 select_thread(tid) -> bool Select the given thread as the current debugged thread.
 
"bool" request_select_thread ("thid_t" tid)
 request_select_thread(tid) -> bool Post a select_thread() request.
 
"int" suspend_thread ("thid_t" tid)
 suspend_thread(tid) -> int Suspend thread.
 
"int" request_suspend_thread ("thid_t" tid)
 request_suspend_thread(tid) -> int Post a suspend_thread() request.
 
"int" resume_thread ("thid_t" tid)
 resume_thread(tid) -> int Resume thread.
 
"int" request_resume_thread ("thid_t" tid)
 request_resume_thread(tid) -> int Post a resume_thread() request.
 
"bool" get_first_module ("modinfo_t" modinfo)
 get_first_module(modinfo) -> bool
 
"bool" get_next_module ("modinfo_t" modinfo)
 get_next_module(modinfo) -> bool
 
"bool" step_into ()
 step_into() -> bool Execute one instruction in the current thread.
 
"bool" request_step_into ()
 request_step_into() -> bool Post a step_into() request.
 
"bool" step_over ()
 step_over() -> bool Execute one instruction in the current thread, but without entering into functions.
 
"bool" request_step_over ()
 request_step_over() -> bool Post a step_over() request.
 
"bool" step_until_ret ()
 step_until_ret() -> bool Execute instructions in the current thread until a function return instruction is executed (aka "step out").
 
"bool" request_step_until_ret ()
 request_step_until_ret() -> bool Post a step_until_ret() request.
 
"bool" set_resume_mode ("thid_t" tid, "resume_mode_t" mode)
 set_resume_mode(tid, mode) -> bool How to resume the application.
 
"bool" request_set_resume_mode ("thid_t" tid, "resume_mode_t" mode)
 request_set_resume_mode(tid, mode) -> bool Post a set_resume_mode() request.
 
"bool" get_dbg_reg_info ("char const *" regname, "register_info_t" ri)
 get_dbg_reg_info(regname, ri) -> bool Get register information \sq{Type, Synchronous function, Notification, none (synchronous function)}
 
"uint64 *" get_sp_val ()
 get_sp_val() -> bool Get value of the SP register for the current thread.
 
"uint64 *" get_ip_val ()
 get_ip_val() -> bool Get value of the IP (program counter) register for the current thread.
 
"bool" is_reg_integer ("char const *" regname)
 is_reg_integer(regname) -> bool Does a register contain an integer value? \sq{Type, Synchronous function, Notification, none (synchronous function)}
 
"bool" is_reg_float ("char const *" regname)
 is_reg_float(regname) -> bool Does a register contain a floating point value? \sq{Type, Synchronous function, Notification, none (synchronous function)}
 
"bool" is_reg_custom ("char const *" regname)
 is_reg_custom(regname) -> bool Does a register contain a value of a custom data type? \sq{Type, Synchronous function, Notification, none (synchronous function)}
 
"int" set_bptloc_string ("char const *" s)
 set_bptloc_string(s) -> int
 
"char const *" get_bptloc_string ("int" i)
 get_bptloc_string(i) -> char const *
 
"int" get_bpt_qty ()
 get_bpt_qty() -> int Get number of breakpoints.
 
"bool" getn_bpt ("int" n, "bpt_t" bpt)
 getn_bpt(n, bpt) -> bool Get the characteristics of a breakpoint.
 
"bool" get_bpt ("ea_t" ea, "bpt_t" bpt)
 get_bpt(ea, bpt) -> bool Get the characteristics of a breakpoint.
 
"bool" exist_bpt ("ea_t" ea)
 exist_bpt(ea) -> bool Does a breakpoint exist at the given location?
 
"bool" add_bpt (*args)
 add_bpt(ea, size=0, type=BPT_DEFAULT) -> bool Add a new breakpoint in the debugged process.
 
"bool" request_add_bpt (*args)
 request_add_bpt(ea, size=0, type=BPT_DEFAULT) -> bool Post an add_bpt(const bpt_t &) request.
 
"bool" del_bpt (*args)
 del_bpt(ea) -> bool Delete an existing breakpoint in the debugged process.
 
"bool" request_del_bpt (*args)
 request_del_bpt(ea) -> bool Post a del_bpt(const bpt_location_t &) request.
 
"bool" update_bpt ("bpt_t" bpt)
 update_bpt(bpt) -> bool Update modifiable characteristics of an existing breakpoint.
 
"bool" find_bpt ("bpt_location_t" bptloc, "bpt_t" bpt)
 find_bpt(bptloc, bpt) -> bool Find a breakpoint by location.
 
"bool" enable_bpt (*args)
 enable_bpt(ea, enable=True) -> bool
 
"bool" disable_bpt (*args)
 disable_bpt(ea) -> bool
 
"bool" request_enable_bpt (*args)
 request_enable_bpt(ea, enable=True) -> bool
 
"bool" request_disable_bpt (*args)
 request_disable_bpt(ea) -> bool
 
"int" check_bpt ("ea_t" ea)
 check_bpt(ea) -> int Check the breakpoint at the specified address.
 
"bool" set_trace_size ("int" size)
 set_trace_size(size) -> bool Specify the new size of the circular buffer.
 
"void" clear_trace ()
 clear_trace() Clear all events in the trace buffer.
 
"void" request_clear_trace ()
 request_clear_trace() Post a clear_trace() request.
 
"bool" is_step_trace_enabled ()
 is_step_trace_enabled() -> bool Get current state of step tracing.
 
"bool" enable_step_trace ("int" enable=1)
 enable_step_trace(enable=1) -> bool
 
"bool" disable_step_trace ()
 disable_step_trace() -> bool
 
"bool" request_enable_step_trace ("int" enable=1)
 request_enable_step_trace(enable=1) -> bool
 
"bool" request_disable_step_trace ()
 request_disable_step_trace() -> bool
 
"int" get_step_trace_options ()
 get_step_trace_options() -> int Get current step tracing options.
 
"void" set_step_trace_options ("int" options)
 set_step_trace_options(options) Modify step tracing options.
 
"void" request_set_step_trace_options ("int" options)
 request_set_step_trace_options(options) Post a set_step_trace_options() request.
 
"bool" is_insn_trace_enabled ()
 is_insn_trace_enabled() -> bool Get current state of instruction tracing.
 
"bool" enable_insn_trace ("bool" enable=True)
 enable_insn_trace(enable=True) -> bool
 
"bool" disable_insn_trace ()
 disable_insn_trace() -> bool
 
"bool" request_enable_insn_trace ("bool" enable=True)
 request_enable_insn_trace(enable=True) -> bool
 
"bool" request_disable_insn_trace ()
 request_disable_insn_trace() -> bool
 
"int" get_insn_trace_options ()
 get_insn_trace_options() -> int Get current instruction tracing options.
 
"void" set_insn_trace_options ("int" options)
 set_insn_trace_options(options) Modify instruction tracing options.
 
"void" request_set_insn_trace_options ("int" options)
 request_set_insn_trace_options(options) Post a set_insn_trace_options() request.
 
"bool" is_func_trace_enabled ()
 is_func_trace_enabled() -> bool Get current state of functions tracing.
 
"bool" enable_func_trace ("bool" enable=True)
 enable_func_trace(enable=True) -> bool
 
"bool" disable_func_trace ()
 disable_func_trace() -> bool
 
"bool" request_enable_func_trace ("bool" enable=True)
 request_enable_func_trace(enable=True) -> bool
 
"bool" request_disable_func_trace ()
 request_disable_func_trace() -> bool
 
"int" get_func_trace_options ()
 get_func_trace_options() -> int Get current function tracing options.
 
"void" set_func_trace_options ("int" options)
 set_func_trace_options(options) Modify function tracing options.
 
"void" request_set_func_trace_options ("int" options)
 request_set_func_trace_options(options) Post a set_func_trace_options() request.
 
"bool" enable_bblk_trace ("bool" enable=True)
 enable_bblk_trace(enable=True) -> bool
 
"bool" disable_bblk_trace ()
 disable_bblk_trace() -> bool
 
"bool" request_enable_bblk_trace ("bool" enable=True)
 request_enable_bblk_trace(enable=True) -> bool
 
"bool" request_disable_bblk_trace ()
 request_disable_bblk_trace() -> bool
 
"bool" is_bblk_trace_enabled ()
 is_bblk_trace_enabled() -> bool
 
"int" get_bblk_trace_options ()
 get_bblk_trace_options() -> int Get current basic block tracing options.
 
"void" set_bblk_trace_options ("int" options)
 set_bblk_trace_options(options) Modify basic block tracing options (see BT_LOG_INSTS)
 
"void" request_set_bblk_trace_options ("int" options)
 request_set_bblk_trace_options(options) Post a set_bblk_trace_options() request.
 
"int" get_tev_qty ()
 get_tev_qty() -> int Get number of trace events available in trace buffer.
 
"bool" get_tev_info ("int" n, "tev_info_t" tev_info)
 get_tev_info(n, tev_info) -> bool Get main information about a trace event.
 
"bool" get_insn_tev_reg_val ("int" n, "char const *" regname, "regval_t" regval)
 get_insn_tev_reg_val(n, regname, regval) -> bool
 
"bool" get_insn_tev_reg_mem ("int" n, "memreg_infos_t" memmap)
 get_insn_tev_reg_mem(n, memmap) -> bool Read the memory pointed by register values from an instruction trace event.
 
"bool" get_insn_tev_reg_result ("int" n, "char const *" regname, "regval_t" regval)
 get_insn_tev_reg_result(n, regname, regval) -> bool
 
"ea_t" get_call_tev_callee ("int" n)
 get_call_tev_callee(n) -> ea_t Get the called function from a function call trace event.
 
"ea_t" get_ret_tev_return ("int" n)
 get_ret_tev_return(n) -> ea_t Get the return address from a function return trace event.
 
"ea_t" get_bpt_tev_ea ("int" n)
 get_bpt_tev_ea(n) -> ea_t Get the address associated to a read, read/write or execution trace event.
 
"bool" get_tev_memory_info ("int" n, "meminfo_vec_t" mi)
 get_tev_memory_info(n, mi) -> bool Get the memory layout, if any, for the specified tev object.
 
"bool" get_tev_event ("int" n, "debug_event_t" d)
 get_tev_event(n, d) -> bool Get the corresponding debug event, if any, for the specified tev object.
 
"ea_t" get_trace_base_address ()
 get_trace_base_address() -> ea_t Get the base address of the current trace.
 
"void" set_trace_base_address ("ea_t" ea)
 set_trace_base_address(ea) Set the base address of the current trace.
 
"void" dbg_add_thread ("thid_t" tid)
 dbg_add_thread(tid) Add a thread to the current trace.
 
"void" dbg_del_thread ("thid_t" tid)
 dbg_del_thread(tid) Delete a thread from the current trace.
 
"void" dbg_add_tev ("tev_type_t" type, "thid_t" tid, "ea_t" address)
 dbg_add_tev(type, tid, address) Add a new trace element to the current trace.
 
"bool" dbg_add_many_tevs ("tevinforeg_vec_t" new_tevs)
 dbg_add_many_tevs(new_tevs) -> bool Add many new trace elements to the current trace.
 
"bool" dbg_add_insn_tev ("thid_t" tid, "ea_t" ea, "save_reg_values_t" save=SAVE_DIFF)
 dbg_add_insn_tev(tid, ea, save=SAVE_DIFF) -> bool Add a new instruction trace element to the current trace.
 
"bool" dbg_add_bpt_tev ("thid_t" tid, "ea_t" ea, "ea_t" bp)
 dbg_add_bpt_tev(tid, ea, bp) -> bool Add a new breakpoint trace element to the current trace.
 
"void" dbg_add_call_tev ("thid_t" tid, "ea_t" caller, "ea_t" callee)
 dbg_add_call_tev(tid, caller, callee) Add a new call trace element to the current trace.
 
"void" dbg_add_ret_tev ("thid_t" tid, "ea_t" ret_insn, "ea_t" return_to)
 dbg_add_ret_tev(tid, ret_insn, return_to) Add a new return trace element to the current trace.
 
"void" dbg_add_debug_event ("debug_event_t" event)
 dbg_add_debug_event(event) Add a new debug event to the current trace.
 
"qstring *" load_trace_file ("char const *" filename)
 load_trace_file(filename) -> str Load a recorded trace file in the 'Tracing' window.
 
"bool" save_trace_file ("char const *" filename, "char const *" description)
 save_trace_file(filename, description) -> bool Save the current trace in the specified file.
 
"bool" is_valid_trace_file ("char const *" filename)
 is_valid_trace_file(filename) -> bool Is the specified file a valid trace file for the current database?
 
"bool" set_trace_file_desc ("char const *" filename, "char const *" description)
 set_trace_file_desc(filename, description) -> bool Change the description of the specified trace file.
 
"qstring *" get_trace_file_desc ("char const *" filename)
 get_trace_file_desc(filename) -> str Get the file header of the specified trace file.
 
"qstring *" choose_trace_file ()
 choose_trace_file() -> str Show the choose trace dialog.
 
"bool" diff_trace_file ("char const *" NONNULL_filename)
 diff_trace_file(NONNULL_filename) -> bool Show difference between the current trace and the one from 'filename'.
 
"bool" graph_trace ()
 graph_trace() -> bool Show the trace callgraph.
 
"void" set_highlight_trace_options ("bool" hilight, "bgcolor_t" color, "bgcolor_t" diff)
 set_highlight_trace_options(hilight, color, diff) Set highlight trace parameters.
 
"void" set_trace_platform ("char const *" platform)
 set_trace_platform(platform) Set platform name of current trace.
 
"char const *" get_trace_platform ()
 get_trace_platform() -> char const * Get platform name of current trace.
 
"void" set_trace_dynamic_register_set ("dynamic_register_set_t &" idaregs)
 set_trace_dynamic_register_set(idaregs) Set dynamic register set of current trace.
 
"void" get_trace_dynamic_register_set ("dynamic_register_set_t *" idaregs)
 get_trace_dynamic_register_set(idaregs) Get dynamic register set of current trace.
 
"dbg_event_code_t" wait_for_next_event ("int" wfne, "int" timeout)
 wait_for_next_event(wfne, timeout) -> dbg_event_code_t Wait for the next event.
 
"debug_event_t const *" get_debug_event ()
 get_debug_event() -> debug_event_t Get the current debugger event.
 
"uint" set_debugger_options ("uint" options)
 set_debugger_options(options) -> uint Set debugger options.
 
"void" set_remote_debugger ("char const *" host, "char const *" _pass, "int" port=-1)
 set_remote_debugger(host, _pass, port=-1) Set remote debugging options.
 
"qstring *, qstring *, launch_env_t *, qstring *, qstring *, qstring *, int *" get_process_options2 ()
 get_process_options2()
 
"excvec_t *" retrieve_exceptions ()
 retrieve_exceptions() -> excvec_t Retrieve the exception information.
 
"bool" store_exceptions ()
 store_exceptions() -> bool Update the exception information stored in the debugger module by invoking its dbg->set_exception_info callback
 
"char const *" define_exception ("uint" code, "char const *" name, "char const *" desc, "int" flags)
 define_exception(code, name, desc, flags) -> char const * Convenience function: define new exception code.
 
"source_view_t *" create_source_viewer ("TWidget **" out_ccv, "TWidget *" parent, "TWidget *" custview, "source_file_ptr" sf, "strvec_t *" lines, "int" lnnum, "int" colnum, "int" flags)
 create_source_viewer(out_ccv, parent, custview, sf, lines, lnnum, colnum, flags) -> source_view_t * Create a source code view.
 
"uint32 *" get_dbg_byte ("ea_t" ea)
 get_dbg_byte(ea) -> bool Get one byte of the debugged process memory.
 
"bool" put_dbg_byte ("ea_t" ea, "uint32" x)
 put_dbg_byte(ea, x) -> bool Change one byte of the debugged process memory.
 
"void" invalidate_dbgmem_config ()
 invalidate_dbgmem_config() Invalidate the debugged process memory configuration.
 
"void" invalidate_dbgmem_contents ("ea_t" ea, "asize_t" size)
 invalidate_dbgmem_contents(ea, size) Invalidate the debugged process memory contents.
 
"bool" is_debugger_on ()
 is_debugger_on() -> bool Is the debugger currently running?
 
"bool" is_debugger_memory ("ea_t" ea)
 is_debugger_memory(ea) -> bool Is the address mapped to debugger memory?
 
"ea_t" get_tev_ea ("int" n)
 get_tev_ea(n) -> ea_t
 
"int" get_tev_type ("int" n)
 get_tev_type(n) -> int
 
"int" get_tev_tid ("int" n)
 get_tev_tid(n) -> int
 
"void" bring_debugger_to_front ()
 bring_debugger_to_front()
 
"void" set_manual_regions ("meminfo_vec_t" ranges)
 set_manual_regions(ranges)
 
"void" edit_manual_regions ()
 edit_manual_regions()
 
"void" enable_manual_regions ("bool" enable)
 enable_manual_regions(enable)
 
"int" handle_debug_event ("debug_event_t" ev, "int" rqflags)
 handle_debug_event(ev, rqflags) -> int
 
"bool" add_virt_module ("modinfo_t" mod)
 add_virt_module(mod) -> bool
 
"bool" del_virt_module ("ea_t const" base)
 del_virt_module(base) -> bool
 
"int" internal_ioctl ("int" fn, "void const *" buf, "void **" poutbuf, "ssize_t *" poutsize)
 internal_ioctl(fn, buf, poutbuf, poutsize) -> int
 
"int" get_dbg_memory_info ("meminfo_vec_t" ranges)
 get_dbg_memory_info(ranges) -> int
 
"bool" set_bpt_group ("bpt_t" bpt, "char const *" grp_name)
 set_bpt_group(bpt, grp_name) -> bool Move a bpt into a folder in the breakpoint dirtree if the folder didn't exists, it will be created \sq{Type, Synchronous function, Notification, none (synchronous function)}
 
"bool" set_bptloc_group ("bpt_location_t" bptloc, "char const *" grp_name)
 set_bptloc_group(bptloc, grp_name) -> bool Move a bpt into a folder in the breakpoint dirtree based on the bpt_location find_bpt is called to retrieve the bpt and then set_bpt_group if the folder didn't exists, it will be created \sq{Type, Synchronous function, Notification, none (synchronous function)}
 
"qstring *" get_bpt_group ("bpt_location_t" bptloc)
 get_bpt_group(bptloc) -> str Retrieve the absolute path to the folder of the bpt based on the bpt_location find_bpt is called to retrieve the bpt \sq{Type, Synchronous function, Notification, none (synchronous function)}
 
"bool" rename_bptgrp ("char const *" old_name, "char const *" new_name)
 rename_bptgrp(old_name, new_name) -> bool Rename a folder of bpt dirtree \sq{Type, Synchronous function, Notification, none (synchronous function)}
 
"bool" del_bptgrp ("char const *" name)
 del_bptgrp(name) -> bool Delete a folder, bpt that were part of this folder are moved to the root folder \sq{Type, Synchronous function, Notification, none (synchronous function)}
 
"ssize_t" get_grp_bpts ("bpt_vec_t" bpts, "char const *" grp_name)
 get_grp_bpts(bpts, grp_name) -> ssize_t Retrieve a copy the bpts stored in a folder \sq{Type, Synchronous function, Notification, none (synchronous function)}
 
"int" enable_bptgrp ("char const *" bptgrp_name, "bool" enable=True)
 enable_bptgrp(bptgrp_name, enable=True) -> int Enable (or disable) all bpts in a folder \sq{Type, Synchronous function, Notification, none (synchronous function)}
 
"bool" get_local_vars ("srcinfo_provider_t *" prov, "ea_t" ea, "source_items_t *" out)
 get_local_vars(prov, ea, out) -> bool
 
"bool" srcdbg_request_step_into ()
 srcdbg_request_step_into() -> bool
 
"bool" srcdbg_request_step_over ()
 srcdbg_request_step_over() -> bool
 
"bool" srcdbg_request_step_until_ret ()
 srcdbg_request_step_until_ret() -> bool
 
"int" hide_all_bpts ()
 hide_all_bpts() -> int
 
"ssize_t" read_dbg_memory ("ea_t" ea, "void *" buffer, "size_t" size)
 read_dbg_memory(ea, buffer, size) -> ssize_t
 
"bool" get_module_info ("ea_t" ea, "modinfo_t" modinfo)
 get_module_info(ea, modinfo) -> bool
 
"uint64 *, qstring *" dbg_bin_search ("ea_t" start_ea, "ea_t" end_ea, "compiled_binpat_vec_t const &" data, "int" srch_flags)
 dbg_bin_search(start_ea, end_ea, data, srch_flags) -> str
 
"bool" load_debugger ("char const *" dbgname, "bool" use_remote)
 load_debugger(dbgname, use_remote) -> bool
 
"bool" collect_stack_trace ("thid_t" tid, "call_stack_t" trace)
 collect_stack_trace(tid, trace) -> bool
 
"bool" get_global_var ("srcinfo_provider_t *" prov, "ea_t" ea, "char const *" name, "source_item_ptr *" out)
 get_global_var(prov, ea, name, out) -> bool
 
"bool" get_local_var ("srcinfo_provider_t *" prov, "ea_t" ea, "char const *" name, "source_item_ptr *" out)
 get_local_var(prov, ea, name, out) -> bool
 
"srcinfo_provider_t *" get_srcinfo_provider ("char const *" name)
 get_srcinfo_provider(name) -> srcinfo_provider_t *
 
"qstring *" get_current_source_file ()
 get_current_source_file() -> str
 
"int" get_current_source_line ()
 get_current_source_line() -> int
 
"void" add_path_mapping ("char const *" src, "char const *" dst)
 add_path_mapping(src, dst)
 
"bool" srcdbg_step_into ()
 srcdbg_step_into() -> bool
 
"bool" srcdbg_step_over ()
 srcdbg_step_over() -> bool
 
"bool" srcdbg_step_until_ret ()
 srcdbg_step_until_ret() -> bool
 
"void" set_debugger_event_cond ("char const *" NONNULL_evcond)
 set_debugger_event_cond(NONNULL_evcond)
 
"char const *" get_debugger_event_cond ()
 get_debugger_event_cond() -> char const *
 
"void" set_process_options (*args)
 set_process_options(path, args, envs, sdir, host, _pass, port) Set process options.
 
"qstring *, qstring *, qstring *, qstring *, qstring *, int *" get_process_options ()
 get_process_options() Get process options.
 
"PyObject *" get_manual_regions (*args)
 Returns the manual memory regions.
 
"bool" dbg_is_loaded ()
 Checks if a debugger is loaded.
 
"PyObject *" refresh_debugger_memory ()
 Refreshes the debugger memory.
 
"PyObject *" list_bptgrps (*args)
 list_bptgrps(bptgrps) -> size_t Retrieve the list of absolute path of all folders of bpt dirtree \sq{Type, Synchronous function, Notification, none (synchronous function)}
 
"ea_t" internal_get_sreg_base ("thid_t" tid, "int" sreg_value)
 Get the sreg base, for the given thread.
 
"ssize_t" write_dbg_memory (*args)
 write_dbg_memory(ea, py_buf, size=size_t(-1)) -> ssize_t
 
"bool" dbg_can_query ()
 
"PyObject *" set_reg_val (*args)
 set_reg_val(regname, o) -> PyObject
 
"PyObject *" request_set_reg_val ("char const *" regname, "PyObject *" o)
 request_set_reg_val(regname, o) -> PyObject * Post a set_reg_val() request.
 
"PyObject *" get_reg_val (*args)
 get_reg_val(regname, regval) -> bool Get register value as an unsigned 64-bit int.
 
"regvals_t *" get_reg_vals ("thid_t" tid, "int" clsmask=-1)
 Fetch live registers values for the thread.
 
 get_tev_reg_val (tev, reg)
 
 get_tev_reg_mem_qty (tev)
 
 get_tev_reg_mem (tev, idx)
 
 get_tev_reg_mem_ea (tev, idx)
 
 send_dbg_command (command)
 Send a direct command to the debugger backend, and retrieve the result as a string.
 

Variables

 dbg_null = _ida_dbg.dbg_null
 
 dbg_process_start = _ida_dbg.dbg_process_start
 
 dbg_process_exit = _ida_dbg.dbg_process_exit
 
 dbg_process_attach = _ida_dbg.dbg_process_attach
 
 dbg_process_detach = _ida_dbg.dbg_process_detach
 
 dbg_thread_start = _ida_dbg.dbg_thread_start
 
 dbg_thread_exit = _ida_dbg.dbg_thread_exit
 
 dbg_library_load = _ida_dbg.dbg_library_load
 
 dbg_library_unload = _ida_dbg.dbg_library_unload
 
 dbg_information = _ida_dbg.dbg_information
 
 dbg_exception = _ida_dbg.dbg_exception
 
 dbg_suspend_process = _ida_dbg.dbg_suspend_process
 
 dbg_bpt = _ida_dbg.dbg_bpt
 
 dbg_trace = _ida_dbg.dbg_trace
 
 dbg_request_error = _ida_dbg.dbg_request_error
 
 dbg_step_into = _ida_dbg.dbg_step_into
 
 dbg_step_over = _ida_dbg.dbg_step_over
 
 dbg_run_to = _ida_dbg.dbg_run_to
 
 dbg_step_until_ret = _ida_dbg.dbg_step_until_ret
 
 dbg_bpt_changed = _ida_dbg.dbg_bpt_changed
 
 dbg_started_loading_bpts = _ida_dbg.dbg_started_loading_bpts
 
 dbg_finished_loading_bpts = _ida_dbg.dbg_finished_loading_bpts
 
 dbg_last = _ida_dbg.dbg_last
 
 BPTEV_ADDED = _ida_dbg.BPTEV_ADDED
 
 BPTEV_REMOVED = _ida_dbg.BPTEV_REMOVED
 
 BPTEV_CHANGED = _ida_dbg.BPTEV_CHANGED
 
 DSTATE_SUSP = _ida_dbg.DSTATE_SUSP
 
 DSTATE_NOTASK = _ida_dbg.DSTATE_NOTASK
 
 DSTATE_RUN = _ida_dbg.DSTATE_RUN
 
 DBGINV_MEMORY = _ida_dbg.DBGINV_MEMORY
 
 DBGINV_MEMCFG = _ida_dbg.DBGINV_MEMCFG
 
 DBGINV_REGS = _ida_dbg.DBGINV_REGS
 
 DBGINV_ALL = _ida_dbg.DBGINV_ALL
 
 DBGINV_REDRAW = _ida_dbg.DBGINV_REDRAW
 
 DBGINV_NONE = _ida_dbg.DBGINV_NONE
 
 MOVBPT_OK = _ida_dbg.MOVBPT_OK
 
 MOVBPT_NOT_FOUND = _ida_dbg.MOVBPT_NOT_FOUND
 
 MOVBPT_DEST_BUSY = _ida_dbg.MOVBPT_DEST_BUSY
 
 MOVBPT_BAD_TYPE = _ida_dbg.MOVBPT_BAD_TYPE
 
 BPLT_ABS = _ida_dbg.BPLT_ABS
 
 BPLT_REL = _ida_dbg.BPLT_REL
 
 BPLT_SYM = _ida_dbg.BPLT_SYM
 
 BPLT_SRC = _ida_dbg.BPLT_SRC
 
 BPT_BRK = _ida_dbg.BPT_BRK
 
 BPT_TRACE = _ida_dbg.BPT_TRACE
 
 BPT_UPDMEM = _ida_dbg.BPT_UPDMEM
 
 BPT_ENABLED = _ida_dbg.BPT_ENABLED
 
 BPT_LOWCND = _ida_dbg.BPT_LOWCND
 
 BPT_TRACEON = _ida_dbg.BPT_TRACEON
 
 BPT_TRACE_INSN = _ida_dbg.BPT_TRACE_INSN
 
 BPT_TRACE_FUNC = _ida_dbg.BPT_TRACE_FUNC
 
 BPT_TRACE_BBLK = _ida_dbg.BPT_TRACE_BBLK
 
 BPT_TRACE_TYPES = _ida_dbg.BPT_TRACE_TYPES
 
 BPT_ELANG_MASK = _ida_dbg.BPT_ELANG_MASK
 
 BPT_ELANG_SHIFT = _ida_dbg.BPT_ELANG_SHIFT
 
 BKPT_BADBPT = _ida_dbg.BKPT_BADBPT
 
 BKPT_LISTBPT = _ida_dbg.BKPT_LISTBPT
 
 BKPT_TRACE = _ida_dbg.BKPT_TRACE
 
 BKPT_ACTIVE = _ida_dbg.BKPT_ACTIVE
 
 BKPT_PARTIAL = _ida_dbg.BKPT_PARTIAL
 
 BKPT_CNDREADY = _ida_dbg.BKPT_CNDREADY
 
 BKPT_FAKEPEND = _ida_dbg.BKPT_FAKEPEND
 
 BKPT_PAGE = _ida_dbg.BKPT_PAGE
 
 BPTCK_NONE = _ida_dbg.BPTCK_NONE
 
 BPTCK_NO = _ida_dbg.BPTCK_NO
 
 BPTCK_YES = _ida_dbg.BPTCK_YES
 
 BPTCK_ACT = _ida_dbg.BPTCK_ACT
 
 ST_OVER_DEBUG_SEG = _ida_dbg.ST_OVER_DEBUG_SEG
 
 ST_OVER_LIB_FUNC = _ida_dbg.ST_OVER_LIB_FUNC
 
 ST_ALREADY_LOGGED = _ida_dbg.ST_ALREADY_LOGGED
 
 ST_SKIP_LOOPS = _ida_dbg.ST_SKIP_LOOPS
 
 ST_DIFFERENTIAL = _ida_dbg.ST_DIFFERENTIAL
 
 ST_OPTIONS_MASK = _ida_dbg.ST_OPTIONS_MASK
 
 ST_OPTIONS_DEFAULT = _ida_dbg.ST_OPTIONS_DEFAULT
 
 IT_LOG_SAME_IP = _ida_dbg.IT_LOG_SAME_IP
 
 FT_LOG_RET = _ida_dbg.FT_LOG_RET
 
 BT_LOG_INSTS = _ida_dbg.BT_LOG_INSTS
 
 tev_none = _ida_dbg.tev_none
 
 tev_insn = _ida_dbg.tev_insn
 
 tev_call = _ida_dbg.tev_call
 
 tev_ret = _ida_dbg.tev_ret
 
 tev_bpt = _ida_dbg.tev_bpt
 
 tev_mem = _ida_dbg.tev_mem
 
 tev_event = _ida_dbg.tev_event
 
 tev_max = _ida_dbg.tev_max
 
 SAVE_ALL_VALUES = _ida_dbg.SAVE_ALL_VALUES
 
 SAVE_DIFF = _ida_dbg.SAVE_DIFF
 
 SAVE_NONE = _ida_dbg.SAVE_NONE
 
 DEC_NOTASK = _ida_dbg.DEC_NOTASK
 
 DEC_ERROR = _ida_dbg.DEC_ERROR
 
 DEC_TIMEOUT = _ida_dbg.DEC_TIMEOUT
 
 WFNE_ANY = _ida_dbg.WFNE_ANY
 
 WFNE_SUSP = _ida_dbg.WFNE_SUSP
 
 WFNE_SILENT = _ida_dbg.WFNE_SILENT
 
 WFNE_CONT = _ida_dbg.WFNE_CONT
 
 WFNE_NOWAIT = _ida_dbg.WFNE_NOWAIT
 
 WFNE_USEC = _ida_dbg.WFNE_USEC
 
 DOPT_SEGM_MSGS = _ida_dbg.DOPT_SEGM_MSGS
 
 DOPT_START_BPT = _ida_dbg.DOPT_START_BPT
 
 DOPT_THREAD_MSGS = _ida_dbg.DOPT_THREAD_MSGS
 
 DOPT_THREAD_BPT = _ida_dbg.DOPT_THREAD_BPT
 
 DOPT_BPT_MSGS = _ida_dbg.DOPT_BPT_MSGS
 
 DOPT_LIB_MSGS = _ida_dbg.DOPT_LIB_MSGS
 
 DOPT_LIB_BPT = _ida_dbg.DOPT_LIB_BPT
 
 DOPT_INFO_MSGS = _ida_dbg.DOPT_INFO_MSGS
 
 DOPT_INFO_BPT = _ida_dbg.DOPT_INFO_BPT
 
 DOPT_REAL_MEMORY = _ida_dbg.DOPT_REAL_MEMORY
 
 DOPT_REDO_STACK = _ida_dbg.DOPT_REDO_STACK
 
 DOPT_ENTRY_BPT = _ida_dbg.DOPT_ENTRY_BPT
 
 DOPT_EXCDLG = _ida_dbg.DOPT_EXCDLG
 
 EXCDLG_NEVER = _ida_dbg.EXCDLG_NEVER
 
 EXCDLG_UNKNOWN = _ida_dbg.EXCDLG_UNKNOWN
 
 EXCDLG_ALWAYS = _ida_dbg.EXCDLG_ALWAYS
 
 DOPT_LOAD_DINFO = _ida_dbg.DOPT_LOAD_DINFO
 
 DOPT_END_BPT = _ida_dbg.DOPT_END_BPT
 
 DOPT_TEMP_HWBPT = _ida_dbg.DOPT_TEMP_HWBPT
 
 DOPT_FAST_STEP = _ida_dbg.DOPT_FAST_STEP
 
 DOPT_DISABLE_ASLR = _ida_dbg.DOPT_DISABLE_ASLR
 
 SRCIT_NONE = _ida_dbg.SRCIT_NONE
 
 SRCIT_MODULE = _ida_dbg.SRCIT_MODULE
 
 SRCIT_FUNC = _ida_dbg.SRCIT_FUNC
 
 SRCIT_STMT = _ida_dbg.SRCIT_STMT
 
 SRCIT_EXPR = _ida_dbg.SRCIT_EXPR
 
 SRCIT_STTVAR = _ida_dbg.SRCIT_STTVAR
 
 SRCIT_LOCVAR = _ida_dbg.SRCIT_LOCVAR
 
 SRCDBG_PROV_VERSION = _ida_dbg.SRCDBG_PROV_VERSION
 
"bool" move_bpt_to_grp = set_bpt_group