IDA C++ SDK 9.2
|
Description of a custom argloc. More...
#include <typeinf.hpp>
Public Member Functions | |
void (idaapi *copy)(argloc_t *empty_dst | |
Copy src into empty_dst. | |
void (idaapi *cleanup)(argloc_t *loc) | |
Clear contents of loc before it is modified (may be nullptr) | |
bool (idaapi *verify)(const argloc_t &loc | |
May be nullptr. | |
int (idaapi *compare)(const argloc_t &a | |
Lexical comparison of two arglocs. | |
size_t (idaapi *print)(char *buf | |
Get textual description of the location (not the value at the location!) | |
bool (idaapi *deref_field)(argloc_t *out | |
Dereference the struct/union pointed by 'strloc': take member at offset 'off' (or use the field name), improve member 'tif' if necessary. | |
bool (idaapi *deref_array)(argloc_t *out | |
Dereference the array pointed by 'arrloc': take member number 'n' (element size is 'elsize'), improve member 'tif' if necessary. | |
bool (idaapi *deref_ptr)(argloc_t *out | |
Dereference the pointer at 'loc': retrieve location of the pointed object, improve 'tif' of the pointed object if necessary. | |
bool (idaapi *read_value)(value_union_t *value | |
Read the pointer at 'loc': retrieve value of a simple object. | |
bool (idaapi *write_value)(const argloc_t &loc | |
Update value at 'loc'. | |
asize_t (idaapi *calc_string_length)(const argloc_t &loc | |
Calc max natural string length at 'loc' in the debugged process memory. | |
bool (idaapi *get_string)(qstring *out | |
Retrieve string at 'loc' from the debugged process memory, returns quoted string value. | |
asize_t (idaapi *guess_array_size)(const argloc_t &loc | |
Retrieve size of array at 'loc' (number of elements) | |
bool (idaapi *get_tinfo)(tinfo_t *out | |
Retrieve type of the object at 'loc'. | |
int (idaapi *calc_number_of_children)(const argloc_t &loc | |
Calculate the number of children for the given location. | |
size_t (idaapi *print_ptr_value)(char *buf | |
Get string containing a printable representation of the pointer at 'loc'. |
Description of a custom argloc.
Custom arglocs can be added by plugins in order to describe the locations unsupported by the ida kernel.
custloc_desc_t::void | ( | idaapi * | copy | ) |
Copy src into empty_dst.
custloc_desc_t::void | ( | idaapi * | cleanup | ) |
Clear contents of loc before it is modified (may be nullptr)
custloc_desc_t::bool | ( | idaapi * | verify | ) | const & |
May be nullptr.
custloc_desc_t::int | ( | idaapi * | compare | ) | const & |
Lexical comparison of two arglocs.
custloc_desc_t::size_t | ( | idaapi * | ) |
Get textual description of the location (not the value at the location!)
custloc_desc_t::bool | ( | idaapi * | deref_field | ) |
Dereference the struct/union pointed by 'strloc': take member at offset 'off' (or use the field name), improve member 'tif' if necessary.
custloc_desc_t::bool | ( | idaapi * | deref_array | ) |
Dereference the array pointed by 'arrloc': take member number 'n' (element size is 'elsize'), improve member 'tif' if necessary.
custloc_desc_t::bool | ( | idaapi * | deref_ptr | ) |
Dereference the pointer at 'loc': retrieve location of the pointed object, improve 'tif' of the pointed object if necessary.
custloc_desc_t::bool | ( | idaapi * | read_value | ) |
Read the pointer at 'loc': retrieve value of a simple object.
the object value must fit value_union_t.
custloc_desc_t::bool | ( | idaapi * | write_value | ) | const & |
Update value at 'loc'.
if idcv is VT_LONG/VT_INT64/VT_FLOAT, the value in native format is copied to 'scalar_value' for your convenience. otherwise please use 'idcv' and not 'scalar_value'.
custloc_desc_t::asize_t | ( | idaapi * | calc_string_length | ) | const & |
Calc max natural string length at 'loc' in the debugged process memory.
custloc_desc_t::bool | ( | idaapi * | get_string | ) |
Retrieve string at 'loc' from the debugged process memory, returns quoted string value.
custloc_desc_t::asize_t | ( | idaapi * | guess_array_size | ) | const & |
Retrieve size of array at 'loc' (number of elements)
custloc_desc_t::bool | ( | idaapi * | get_tinfo | ) |
Retrieve type of the object at 'loc'.
custloc_desc_t::int | ( | idaapi * | calc_number_of_children | ) | const & |
Calculate the number of children for the given location.
(arrays, structs, ptrs may have children and therefore be expanded)
custloc_desc_t::size_t | ( | idaapi * | print_ptr_value | ) |
Get string containing a printable representation of the pointer at 'loc'.
Returns the number of characters printed. May be nullptr.
size_t custloc_desc_t::cbsize |
size of this structure
const char* custloc_desc_t::name |
name of the custom argloc type. must be unique
const argloc_t& custloc_desc_t::src |
int custloc_desc_t::size |
int const rangeset_t* custloc_desc_t::gaps |
const argloc_t& custloc_desc_t::b |
size_t custloc_desc_t::bufsize |
const argloc_t & custloc_desc_t::loc |
tinfo_t * custloc_desc_t::tif |
const argloc_t& custloc_desc_t::loc |
const idc_value_t& custloc_desc_t::idcv |
const idc_value_t const value_union_t& custloc_desc_t::scalar_value |
const idc_value_t const value_union_t int custloc_desc_t::size |
const idc_value_t const value_union_t int qstring* custloc_desc_t::errbuf |
const tinfo_t& custloc_desc_t::string_tif |
tinfo_t* custloc_desc_t::elem_tif |
const tinfo_t& custloc_desc_t::array_tif |
const tinfo_t& custloc_desc_t::tif |