angr.knowledge_plugins.callsite_prototypes

class angr.knowledge_plugins.callsite_prototypes.CallsitePrototypeKind

Bases: Enum

Describes the type of a callsite prototype.

INFERRED = 1
PROPAGATED = 2
MANUAL = 3
class angr.knowledge_plugins.callsite_prototypes.CallsitePrototypes

Bases: KnowledgeBasePlugin

CallsitePrototypes manages callee prototypes at call sites.

__init__(kb)
set_prototype(callsite_block_addr, cc, prototype, *, kind=CallsitePrototypeKind.INFERRED, manual=False, propagated=False)
Return type:

None

Parameters:
get_cc(callsite_block_addr, *, kind=CallsitePrototypeKind.INFERRED)
Return type:

SimCC | None

Parameters:
get_prototype(callsite_block_addr, *, kind=CallsitePrototypeKind.INFERRED)
Return type:

SimTypeFunction | None

Parameters:
is_prototype_manual(callsite_block_addr)
Return type:

bool | None

Parameters:

callsite_block_addr (int)

is_prototype_certain(callsite_block_addr)
Return type:

bool | None

Parameters:

callsite_block_addr (int)

has_some_prototype(callsite_block_addr)
Return type:

bool

Parameters:

callsite_block_addr (int)

has_prototype(callsite_block_addr, *, kind=CallsitePrototypeKind.INFERRED)
Return type:

bool

Parameters:
copy()