angr.knowledge_plugins.propagations.propagation_manager

class angr.knowledge_plugins.propagations.propagation_manager.PropagationManager

Bases: KnowledgeBasePlugin

Manages the results of Propagator, including intermediate results for unfinished Propagation runs.

__init__(kb)
exists(prop_key)

Internal function to check if a func, specified as a CodeLocation exists in our known propagations

Parameters:

prop_key (tuple) – A key of the propagation result.

Return type:

bool

Returns:

Whether such a key exists or not.

update(prop_key, model)

Add the replacements to known propagations

Parameters:
  • prop_key (tuple) – A key of the propagation result.

  • model (PropagationModel) – The propagation result to store

Return type:

None

get(prop_key, default=None)

Gets the replacements for a specified function location. If the replacement does not exist in the known propagations, it returns None.

Parameters:
  • prop_key – A key of the propagation result.

  • default – The default value to return if the prop_key does not exist in the cache.

Return type:

PropagationModel

Returns:

Dict or None

copy()
discard_by_prefix(prefix)
Parameters:

prefix (str)