IDAPython 9.0
Loading...
Searching...
No Matches
Appcall__ Class Reference
Inheritance diagram for Appcall__:

Public Member Functions

 __init__ (self)
 
 __getattr__ (self, name_or_ea)
 
 __getitem__ (self, idx)
 

Static Public Member Functions

 proto (name_or_ea, proto_or_tinfo, flags=None)
 
 valueof (name, default=0)
 
 int64 (v)
 
 byref (val)
 
 buffer (str=None, size=0, fill='\x00')
 
 obj (**kwds)
 
 cstr (val)
 
 UTF16 (s)
 
 array (type_name)
 
 typedobj (typedecl_or_tinfo, ea=None)
 
 set_appcall_options (opt)
 
 get_appcall_options ()
 
 cleanup_appcall (tid=0)
 

Static Public Attributes

int APPCALL_MANUAL = 1
 
int APPCALL_DEBEV = 2
 
int APPCALL_TIMEOUT = 4
 
 unicode = UTF16
 

Properties

 Consts = property(__get_consts)
 

Constructor & Destructor Documentation

◆ __init__()

__init__ ( self)

Member Function Documentation

◆ __getattr__()

__getattr__ ( self,
name_or_ea )
Allows you to call functions as if they were member functions (by returning a callable object)

◆ __getitem__()

__getitem__ ( self,
idx )
Use self[func_name] syntax if the function name contains invalid characters for an attribute name
See __getattr___

◆ array()

array ( type_name)
static
Defines an array type. Later you need to pack() / unpack()

◆ buffer()

buffer ( str = None,
size = 0,
fill = '\x00' )
static
Creates a string buffer. The returned value (r) will be a byref object.
Use r.value to get the contents and r.size to get the buffer's size

◆ byref()

byref ( val)
static
Method to create references to immutable objects
Currently we support references to int/strings
Objects need not be passed by reference (this will be done automatically)

◆ cleanup_appcall()

cleanup_appcall ( tid = 0)
static
Cleanup after manual appcall. 

@param tid: thread to use. NO_THREAD means to use the current thread The application state is restored as it was before calling the last appcall(). Nested appcalls are supported.
@returns eOk if successful, otherwise an error code

◆ cstr()

cstr ( val)
static

◆ get_appcall_options()

get_appcall_options ( )
static
Return the global Appcall options

◆ int64()

int64 ( v)
static
Whenever a 64bit number is needed use this method to construct an object

◆ obj()

obj ( ** kwds)
static
Returns an empty object or objects with attributes as passed via its keywords arguments

◆ proto()

proto ( name_or_ea,
proto_or_tinfo,
flags = None )
static
Allows you to instantiate an appcall (callable object) with the desired prototype
@param name_or_ea: The name of the function (will be resolved with LocByName())
@param proto_or_tinfo: function prototype as a string or type of the function as tinfo_t object
@return:
    - On failure it raises an exception if the prototype could not be parsed
      or the address is not resolvable
    - Returns a callbable Appcall instance with the given prototypes and flags

◆ set_appcall_options()

set_appcall_options ( opt)
static
Method to change the Appcall options globally (not per Appcall)

◆ typedobj()

typedobj ( typedecl_or_tinfo,
ea = None )
static
Returns an appcall object for a type (can be given as tinfo_t object or
as a string declaration)
One can then use retrieve() member method
@param ea: Optional parameter that later can be used to retrieve the type
@return: Appcall object or raises ValueError exception

◆ UTF16()

UTF16 ( s)
static

◆ valueof()

valueof ( name,
default = 0 )
static
Returns the numeric value of a given name string.
If the name could not be resolved then the default value will be returned

Member Data Documentation

◆ APPCALL_DEBEV

int APPCALL_DEBEV = 2
static

◆ APPCALL_MANUAL

int APPCALL_MANUAL = 1
static

◆ APPCALL_TIMEOUT

int APPCALL_TIMEOUT = 4
static

◆ unicode

unicode = UTF16
static

Property Documentation

◆ Consts

Consts = property(__get_consts)
static

The documentation for this class was generated from the following file: