ROSE 0.11.145.147
|
Settings to control the pointer analysis.
Definition at line 123 of file PointerDetection.h.
#include <Rose/BinaryAnalysis/PointerDetection.h>
Public Attributes | |
bool | ignoreConstIp = true |
Whether to ignore branches to concrete addresses. | |
bool | ignoreStrangeSizes = true |
Whether to ignore strange-sized pointers. | |
bool | saveDataPointers = true |
Save information about data pointers. | |
bool | saveCodePointers = true |
Save information about code pointers. | |
bool | savePointerVas = true |
Save the pointer variable addresses in the results. | |
bool | savePointerAccesses = true |
Save information about where pointer variables are accessed. | |
bool | savePointerAccessValues = true |
Save pointer accessed values if pointer accesses are saved. | |
bool | savePointerDereferences = true |
Save information about where pointer values are dereferenced. | |
bool | savePointerDereferenceValues = true |
Save pointer dereferenced values if dereferences are saved. | |
uint64_t | symbolicTrimThreshold = std::numeric_limits<uint64_t>::max() |
Threshold for replacing large symbolic expressions with new variables. | |
size_t | maximumDataFlowIterationFactor = 5 |
Maximum data-flow iteration factor. | |
bool Rose::BinaryAnalysis::PointerDetection::Settings::ignoreConstIp = true |
Whether to ignore branches to concrete addresses.
If set, then conditional branches to concrete addresses are ignored, not treated as code pointers. For instance, the x86 "je 0x08048504" instruction would not be considered significant for modifying the instruction pointer since both target addresses are constants.
Definition at line 130 of file PointerDetection.h.
bool Rose::BinaryAnalysis::PointerDetection::Settings::ignoreStrangeSizes = true |
Whether to ignore strange-sized pointers.
If set, then ignore pointer addresses that are not the same width as the stack pointer (data) or instruction pointer (code).
Definition at line 136 of file PointerDetection.h.
bool Rose::BinaryAnalysis::PointerDetection::Settings::saveDataPointers = true |
Save information about data pointers.
Definition at line 139 of file PointerDetection.h.
bool Rose::BinaryAnalysis::PointerDetection::Settings::saveCodePointers = true |
Save information about code pointers.
Definition at line 142 of file PointerDetection.h.
bool Rose::BinaryAnalysis::PointerDetection::Settings::savePointerVas = true |
Save the pointer variable addresses in the results.
Definition at line 145 of file PointerDetection.h.
bool Rose::BinaryAnalysis::PointerDetection::Settings::savePointerAccesses = true |
Save information about where pointer variables are accessed.
Definition at line 148 of file PointerDetection.h.
bool Rose::BinaryAnalysis::PointerDetection::Settings::savePointerAccessValues = true |
Save pointer accessed values if pointer accesses are saved.
Definition at line 151 of file PointerDetection.h.
bool Rose::BinaryAnalysis::PointerDetection::Settings::savePointerDereferences = true |
Save information about where pointer values are dereferenced.
Definition at line 154 of file PointerDetection.h.
bool Rose::BinaryAnalysis::PointerDetection::Settings::savePointerDereferenceValues = true |
Save pointer dereferenced values if dereferences are saved.
Definition at line 157 of file PointerDetection.h.
uint64_t Rose::BinaryAnalysis::PointerDetection::Settings::symbolicTrimThreshold = std::numeric_limits<uint64_t>::max() |
Threshold for replacing large symbolic expressions with new variables.
Definition at line 160 of file PointerDetection.h.
size_t Rose::BinaryAnalysis::PointerDetection::Settings::maximumDataFlowIterationFactor = 5 |
Maximum data-flow iteration factor.
The iteration factor is multiplied by the number of vertices in the function control flow graph to determine how many data flow iterations occur before giving up.
Definition at line 166 of file PointerDetection.h.