IDAPython 9.0
|
Functions that deal with the list of problems. There are several problem lists. An address may be inserted to any list. The kernel simply maintains these lists, no additional processing is done. The problem lists are accessible for the user from the View->Subviews->Problems menu item. Addresses in the lists are kept sorted. In general IDA just maintains these lists without using them during analysis (except PR_ROLLED).
Functions | |
str | get_problem_desc ('problist_id_t' t, ida_idaapi.ea_t ea) |
None | remember_problem ('problist_id_t' type, ida_idaapi.ea_t ea, str msg=None) |
ida_idaapi.ea_t | get_problem ('problist_id_t' type, ida_idaapi.ea_t lowea) |
bool | forget_problem ('problist_id_t' type, ida_idaapi.ea_t ea) |
str | get_problem_name ('problist_id_t' type, bool longname=True) |
bool | is_problem_present ('problist_id_t' t, ida_idaapi.ea_t ea) |
bool | was_ida_decision (ida_idaapi.ea_t ea) |
Variables | |
cvar = _ida_problems.cvar | |
PR_NOBASE = cvar.PR_NOBASE | |
PR_NONAME = cvar.PR_NONAME | |
PR_NOFOP = cvar.PR_NOFOP | |
PR_NOCMT = cvar.PR_NOCMT | |
PR_NOXREFS = cvar.PR_NOXREFS | |
PR_JUMP = cvar.PR_JUMP | |
PR_DISASM = cvar.PR_DISASM | |
PR_HEAD = cvar.PR_HEAD | |
PR_ILLADDR = cvar.PR_ILLADDR | |
PR_MANYLINES = cvar.PR_MANYLINES | |
PR_BADSTACK = cvar.PR_BADSTACK | |
PR_ATTN = cvar.PR_ATTN | |
PR_FINAL = cvar.PR_FINAL | |
PR_ROLLED = cvar.PR_ROLLED | |
PR_COLLISION = cvar.PR_COLLISION | |
PR_DECIMP = cvar.PR_DECIMP | |
PR_END = cvar.PR_END | |
bool forget_problem | ( | 'problist_id_t' | type, |
ida_idaapi.ea_t | ea ) |
Remove an address from a problem list @param type: problem list type @param ea: linear address @returns success
ida_idaapi.ea_t get_problem | ( | 'problist_id_t' | type, |
ida_idaapi.ea_t | lowea ) |
Get an address from the specified problem list. The address is not removed from the list. @param type: problem list type @param lowea: the returned address will be higher or equal than the specified address @returns linear address or BADADDR
str get_problem_desc | ( | 'problist_id_t' | t, |
ida_idaapi.ea_t | ea ) |
Get the human-friendly description of the problem, if one was provided to remember_problem. @param t: problem list type. @param ea: linear address. @returns the message length or -1 if none
str get_problem_name | ( | 'problist_id_t' | type, |
bool | longname = True ) |
Get problem list description.
bool is_problem_present | ( | 'problist_id_t' | t, |
ida_idaapi.ea_t | ea ) |
Check if the specified address is present in the problem list.
None remember_problem | ( | 'problist_id_t' | type, |
ida_idaapi.ea_t | ea, | ||
str | msg = None ) |
Insert an address to a list of problems. Display a message saying about the problem (except of PR_ATTN,PR_FINAL) PR_JUMP is temporarily ignored. @param type: problem list type @param ea: linear address @param msg: a user-friendly message to be displayed instead of the default more generic one associated with the type of problem. Defaults to nullptr.
bool was_ida_decision | ( | ida_idaapi.ea_t | ea | ) |
cvar = _ida_problems.cvar |
PR_ATTN = cvar.PR_ATTN |
PR_BADSTACK = cvar.PR_BADSTACK |
PR_COLLISION = cvar.PR_COLLISION |
PR_DECIMP = cvar.PR_DECIMP |
PR_DISASM = cvar.PR_DISASM |
PR_END = cvar.PR_END |
PR_FINAL = cvar.PR_FINAL |
PR_HEAD = cvar.PR_HEAD |
PR_ILLADDR = cvar.PR_ILLADDR |
PR_JUMP = cvar.PR_JUMP |
PR_MANYLINES = cvar.PR_MANYLINES |
PR_NOBASE = cvar.PR_NOBASE |
PR_NOCMT = cvar.PR_NOCMT |
PR_NOFOP = cvar.PR_NOFOP |
PR_NONAME = cvar.PR_NONAME |
PR_NOXREFS = cvar.PR_NOXREFS |
PR_ROLLED = cvar.PR_ROLLED |