IDA SDK
Public Attributes | List of all members
fixup_handler_t Struct Reference

Detailed Description

Implements the core behavior of a custom fixup.

Public Attributes

int32 cbsize
 size of this structure
 
const char * name
 Format name, must be unique.
 
uint32 props
 Fixup handler properties
 
uint8 size
 size in bytes
 
uint8 width
 number of significant bits before shifting
 
uint8 shift
 number of bits to shift right before patching. More...
 
uint8 rsrv4
 
uint32 reftype
 reference info type and flags, std_apply() produces an offset of this type
 
bool(idaapiapply )(const fixup_handler_t *fh, ea_t item_ea, ea_t fixup_ea, int opnum, bool is_macro, const fixup_data_t &fd)
 Apply a fixup: take it into account while analyzing the file. More...
 
uval_t(idaapiget_value )(const fixup_handler_t *fh, ea_t ea)
 Get the operand value. More...
 
bool(idaapipatch_value )(const fixup_handler_t *fh, ea_t ea, const fixup_data_t &fd)
 Patch the fixup bytes. More...
 

Member Data Documentation

bool(idaapi * fixup_handler_t::apply) (const fixup_handler_t *fh, ea_t item_ea, ea_t fixup_ea, int opnum, bool is_macro, const fixup_data_t &fd)

Apply a fixup: take it into account while analyzing the file.

Usually it consists of converting the operand into an offset expression.

See also
apply_fixup() If this callback is not specified then std_apply() is used.
uval_t(idaapi * fixup_handler_t::get_value) (const fixup_handler_t *fh, ea_t ea)

Get the operand value.

This callback is called from get_fixup_value().

See also
get_fixup_value() If this callback is not specified then std_get_value() is used.
bool(idaapi * fixup_handler_t::patch_value) (const fixup_handler_t *fh, ea_t ea, const fixup_data_t &fd)

Patch the fixup bytes.

This callback is called from patch_fixup_value() or after changing the fixup (e.g. after it was moved from one location to another). If this callback is not specified then std_patch_value() is used.

See also
patch_fixup_value()
Return values
falsethe fixup bytes do not fit. The database is changed even in this case.

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