IDAPython 9.0
Loading...
Searching...
No Matches
ida_idaapi Namespace Reference

Classes

class  IDAPython_displayhook
 
class  loader_input_t
 
class  object_t
 
class  plugin_t
 
class  plugmod_t
 
class  py_clinked_object_t
 
class  pyidc_cvt_helper__
 
class  PyIdc_cvt_int64__
 
class  PyIdc_cvt_refclass__
 
class  pyidc_opaque_object_t
 

Functions

 require (modulename, package=None)
 
 _replace_module_function (replacement)
 
 replfun (func)
 
 _qvector_front (self)
 
 _qvector_back (self)
 
 _bounded_getitem_iterator (self)
 
 as_cstr (val)
 
 as_UTF16 (s)
 
 as_uint32 (v)
 
 as_int32 (v)
 
 as_signed (v, nbits=32)
 
 TRUNC (ea)
 
 copy_bits (v, s, e=-1)
 
 struct_unpack (buffer, signed=False, offs=0)
 
 IDAPython_ExecSystem (cmd)
 
 IDAPython_FormatExc (etype, value=None, tb=None, limit=None)
 
 IDAPython_ExecScript (path, g, print_error=True)
 
 IDAPython_LoadProcMod (path, g, print_error=True)
 
 IDAPython_UnLoadProcMod (script, g, print_error=True)
 
 IDAPython_GetDocstrings (obj)
 
 _listify_types (*classes)
 
 notify_when (when, callback)
 
 _make_one_time_warning_message (bad_attr, new_attr)
 
 _make_missed_695bwcompat_property (bad_attr, new_attr, has_setter)
 
'PyObject *' parse_command_line3 (str cmdline)
 
 set_script_timeout (timeout)
 
 disable_script_timeout ()
 
 enable_extlang_python (enable)
 
None enable_python_cli (bool enable)
 
str format_basestring ('PyObject *' _in)
 
None pygc_refresh ('PyObject *' _self)
 
'PyObject *' pygc_create_groups ('PyObject *' _self, 'PyObject *' groups_infos)
 
'PyObject *' pygc_delete_groups ('PyObject *' _self, 'PyObject *' groups, 'PyObject *' new_current)
 
'PyObject *' pygc_set_groups_visibility ('PyObject *' _self, 'PyObject *' groups, 'PyObject *' expand, 'PyObject *' new_current)
 
'TWidget *' pycim_get_widget ('PyObject *' _self)
 
None pycim_view_close ('PyObject *' _self)
 

Variables

 BADADDR = _ida_idaapi.BADADDR
 
 BADADDR32 = _ida_idaapi.BADADDR32
 
 BADADDR64 = _ida_idaapi.BADADDR64
 
 BADSEL = _ida_idaapi.BADSEL
 
 SIZE_MAX = _ida_idaapi.SIZE_MAX
 
 ea_t = int
 
 integer_types = int, long
 
 string_types = str, unicode
 
 long_type = long
 
int SEEK_SET = 0
 
int SEEK_CUR = 1
 
int SEEK_END = 2
 
int PLUGIN_MOD = 1
 
int PLUGIN_DRAW = 2
 
int PLUGIN_SEG = 4
 
int PLUGIN_UNL = 8
 
int PLUGIN_HIDE = 16
 
int PLUGIN_DBG = 32
 
int PLUGIN_PROC = 64
 
int PLUGIN_FIX = 128
 
int PLUGIN_MULTI = 256
 
int PLUGIN_SKIP = 0
 
int PLUGIN_OK = 1
 
int PLUGIN_KEEP = 2
 
int PY_ICID_INT64 = 0
 
int PY_ICID_BYREF = 1
 
int PY_ICID_OPAQUE = 2
 
int ST_OVER_DEBUG_SEG = 1
 
int ST_OVER_LIB_FUNC = 2
 
 as_unicode = as_UTF16
 
 IDAPython_Completion = __IDAPython_Completion_Util()
 
int NW_OPENIDB = 1
 
int NW_CLOSEIDB = 2
 
int NW_INITIDA = 4
 
int NW_TERMIDA = 8
 
int NW_REMOVE = 16
 
 _notify_when_dispatcher = None
 
 _IDAPython_displayhook = IDAPython_displayhook()
 
 displayhook
 
 HBF_CALL_WITH_NEW_EXEC = _ida_idaapi.HBF_CALL_WITH_NEW_EXEC
 
 HBF_VOLATILE_METHOD_SET = _ida_idaapi.HBF_VOLATILE_METHOD_SET
 
 at = cls.__getitem__
 
 append = cls.push_back
 

Function Documentation

◆ _bounded_getitem_iterator()

_bounded_getitem_iterator ( self)
protected
Helper function, to be set as __iter__ method for qvector-, or array-based classes.

◆ _listify_types()

_listify_types ( * classes)
protected

◆ _make_missed_695bwcompat_property()

_make_missed_695bwcompat_property ( bad_attr,
new_attr,
has_setter )
protected

◆ _make_one_time_warning_message()

_make_one_time_warning_message ( bad_attr,
new_attr )
protected

◆ _qvector_back()

_qvector_back ( self)
protected

◆ _qvector_front()

_qvector_front ( self)
protected

◆ _replace_module_function()

_replace_module_function ( replacement)
protected

◆ as_cstr()

as_cstr ( val)
Returns a C str from the passed value. The passed value can be of type refclass (returned by a call to buffer() or byref())
It scans for the first \\x00 and returns the string value up to that point.

◆ as_int32()

as_int32 ( v)
Returns a number as a signed int32 number

◆ as_signed()

as_signed ( v,
nbits = 32 )
Returns a number as signed. The number of bits are specified by the user.
The MSB holds the sign.

◆ as_uint32()

as_uint32 ( v)
Returns a number as an unsigned int32 number

◆ as_UTF16()

as_UTF16 ( s)
Convenience function to convert a string into appropriate unicode format

◆ copy_bits()

copy_bits ( v,
s,
e = -1 )
Copy bits from a value
@param v: the value
@param s: starting bit (0-based)
@param e: ending bit

◆ disable_script_timeout()

disable_script_timeout ( )
Disables the script timeout and hides the script wait box.
Calling L{set_script_timeout} will not have any effects until the script is compiled and executed again

@return: None

◆ enable_extlang_python()

enable_extlang_python ( enable)
Enables or disables Python extlang.
When enabled, all expressions will be evaluated by Python.

@param enable: Set to True to enable, False otherwise

◆ enable_python_cli()

None enable_python_cli ( bool enable)

◆ format_basestring()

str format_basestring ( 'PyObject *' _in)

◆ IDAPython_ExecScript()

IDAPython_ExecScript ( path,
g,
print_error = True )
Run the specified script.

This function is used by the low-level plugin code.

◆ IDAPython_ExecSystem()

IDAPython_ExecSystem ( cmd)
Executes a command with popen().

◆ IDAPython_FormatExc()

IDAPython_FormatExc ( etype,
value = None,
tb = None,
limit = None )
This function is used to format an exception given the
values returned by a PyErr_Fetch()

◆ IDAPython_GetDocstrings()

IDAPython_GetDocstrings ( obj)

◆ IDAPython_LoadProcMod()

IDAPython_LoadProcMod ( path,
g,
print_error = True )
Load processor module.

◆ IDAPython_UnLoadProcMod()

IDAPython_UnLoadProcMod ( script,
g,
print_error = True )
Unload processor module.

◆ notify_when()

notify_when ( when,
callback )
Register a callback that will be called when an event happens.
@param when: one of NW_XXXX constants
@param callback: This callback prototype varies depending on the 'when' parameter:
                 The general callback format:
                     def notify_when_callback(nw_code)
                 In the case of NW_OPENIDB:
                     def notify_when_callback(nw_code, is_old_database)
@return: Boolean

◆ parse_command_line3()

'PyObject *' parse_command_line3 ( str cmdline)

◆ pycim_get_widget()

'TWidget *' pycim_get_widget ( 'PyObject *' _self)

◆ pycim_view_close()

None pycim_view_close ( 'PyObject *' _self)

◆ pygc_create_groups()

'PyObject *' pygc_create_groups ( 'PyObject *' _self,
'PyObject *' groups_infos )

◆ pygc_delete_groups()

'PyObject *' pygc_delete_groups ( 'PyObject *' _self,
'PyObject *' groups,
'PyObject *' new_current )

◆ pygc_refresh()

None pygc_refresh ( 'PyObject *' _self)

◆ pygc_set_groups_visibility()

'PyObject *' pygc_set_groups_visibility ( 'PyObject *' _self,
'PyObject *' groups,
'PyObject *' expand,
'PyObject *' new_current )

◆ replfun()

replfun ( func)

◆ require()

require ( modulename,
package = None )
Load, or reload a module.

When under heavy development, a user's tool might consist of multiple
modules. If those are imported using the standard 'import' mechanism,
there is no guarantee that the Python implementation will re-read
and re-evaluate the module's Python code. In fact, it usually doesn't.
What should be done instead is 'reload()'-ing that module.

This is a simple helper function that will do just that: In case the
module doesn't exist, it 'import's it, and if it does exist,
'reload()'s it.

The importing module (i.e., the module calling require()) will have
the loaded module bound to its globals(), under the name 'modulename'.
(If require() is called from the command line, the importing module
will be '__main__'.)

For more information, see: <http://www.hexblog.com/?p=749>.

◆ set_script_timeout()

set_script_timeout ( timeout)
Changes the script timeout value. The script wait box dialog will be hidden and shown again when the timeout elapses.
See also L{disable_script_timeout}.

@param timeout: This value is in seconds.
            If this value is set to zero then the script will never timeout.
@return: Returns the old timeout value

◆ struct_unpack()

struct_unpack ( buffer,
signed = False,
offs = 0 )
Unpack a buffer given its length and offset using struct.unpack_from().
This function will know how to unpack the given buffer by using the lookup table '__struct_unpack_table'
If the buffer is of unknown length then None is returned. Otherwise the unpacked value is returned.

◆ TRUNC()

TRUNC ( ea)
 Truncate EA for the current application bitness

Variable Documentation

◆ _IDAPython_displayhook

_IDAPython_displayhook = IDAPython_displayhook()
protected

◆ _notify_when_dispatcher

_notify_when_dispatcher = None
protected

◆ append

append = cls.push_back

◆ as_unicode

as_unicode = as_UTF16

◆ at

at = cls.__getitem__

◆ BADADDR

BADADDR = _ida_idaapi.BADADDR

◆ BADADDR32

BADADDR32 = _ida_idaapi.BADADDR32

◆ BADADDR64

BADADDR64 = _ida_idaapi.BADADDR64

◆ BADSEL

BADSEL = _ida_idaapi.BADSEL

◆ displayhook

displayhook

◆ ea_t

ea_t = int

◆ HBF_CALL_WITH_NEW_EXEC

HBF_CALL_WITH_NEW_EXEC = _ida_idaapi.HBF_CALL_WITH_NEW_EXEC

◆ HBF_VOLATILE_METHOD_SET

HBF_VOLATILE_METHOD_SET = _ida_idaapi.HBF_VOLATILE_METHOD_SET

◆ IDAPython_Completion

IDAPython_Completion = __IDAPython_Completion_Util()

◆ integer_types

integer_types = int, long

◆ long_type

long_type = long

◆ NW_CLOSEIDB

int NW_CLOSEIDB = 2

◆ NW_INITIDA

int NW_INITIDA = 4

◆ NW_OPENIDB

int NW_OPENIDB = 1

◆ NW_REMOVE

int NW_REMOVE = 16

◆ NW_TERMIDA

int NW_TERMIDA = 8

◆ PLUGIN_DBG

int PLUGIN_DBG = 32

◆ PLUGIN_DRAW

int PLUGIN_DRAW = 2

◆ PLUGIN_FIX

int PLUGIN_FIX = 128

◆ PLUGIN_HIDE

int PLUGIN_HIDE = 16

◆ PLUGIN_KEEP

int PLUGIN_KEEP = 2

◆ PLUGIN_MOD

int PLUGIN_MOD = 1

◆ PLUGIN_MULTI

int PLUGIN_MULTI = 256

◆ PLUGIN_OK

int PLUGIN_OK = 1

◆ PLUGIN_PROC

int PLUGIN_PROC = 64

◆ PLUGIN_SEG

int PLUGIN_SEG = 4

◆ PLUGIN_SKIP

int PLUGIN_SKIP = 0

◆ PLUGIN_UNL

int PLUGIN_UNL = 8

◆ PY_ICID_BYREF

int PY_ICID_BYREF = 1

◆ PY_ICID_INT64

int PY_ICID_INT64 = 0

◆ PY_ICID_OPAQUE

int PY_ICID_OPAQUE = 2

◆ SEEK_CUR

int SEEK_CUR = 1

◆ SEEK_END

int SEEK_END = 2

◆ SEEK_SET

int SEEK_SET = 0

◆ SIZE_MAX

SIZE_MAX = _ida_idaapi.SIZE_MAX

◆ ST_OVER_DEBUG_SEG

int ST_OVER_DEBUG_SEG = 1

◆ ST_OVER_LIB_FUNC

int ST_OVER_LIB_FUNC = 2

◆ string_types

string_types = str, unicode