IDAPython 8.4
|
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 | |
"qstring *" | get_problem_desc (*args) |
get_problem_desc(t, ea) -> str Get the human-friendly description of the problem, if one was provided to remember_problem. | |
"void" | remember_problem (*args) |
remember_problem(type, ea, msg=None) Insert an address to a list of problems. | |
"ea_t" | get_problem (*args) |
get_problem(type, lowea) -> ea_t Get an address from the specified problem list. | |
"bool" | forget_problem (*args) |
forget_problem(type, ea) -> bool Remove an address from a problem list | |
"char const *" | get_problem_name (*args) |
get_problem_name(type, longname=True) -> char const * Get problem list description. | |
"bool" | is_problem_present (*args) |
is_problem_present(t, ea) -> bool Check if the specified address is present in the problem list. | |
"bool" | was_ida_decision (*args) |
was_ida_decision(ea) -> bool | |
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 | ( | * | args | ) |
type | (C++: problist_id_t) problem list type |
ea | (C++: ea_t) linear address |
"ea_t" get_problem | ( | * | args | ) |
The address is not removed from the list.
type | (C++: problist_id_t) problem list type |
lowea | (C++: ea_t) the returned address will be higher or equal than the specified address |
"qstring *" get_problem_desc | ( | * | args | ) |
t | (C++: problist_id_t) problem list type. |
ea | (C++: ea_t) linear address. |
"char const *" get_problem_name | ( | * | args | ) |
type | (C++: problist_id_t) |
longname | (C++: bool) |
"bool" is_problem_present | ( | * | args | ) |
t | (C++: problist_id_t) |
ea | (C++: ea_t) |
"void" remember_problem | ( | * | args | ) |
Display a message saying about the problem (except of PR_ATTN,PR_FINAL) PR_JUMP is temporarily ignored.
type | (C++: problist_id_t) problem list type |
ea | (C++: ea_t) linear address |
msg | (C++: const char *) 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 | ( | * | args | ) |
ea | ea_t |
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 |