ROSE
0.11.102.0
|
Settings to control the pointer analysis.
Definition at line 128 of file PointerDetection.h.
#include <Rose/BinaryAnalysis/PointerDetection.h>
Public Attributes | |
bool | ignoreConstIp = true |
Whether to ignore branches to concrete addresses. More... | |
bool | ignoreStrangeSizes = true |
Whether to ignore strange-sized pointers. More... | |
bool | saveDataPointers = true |
Save information about data pointers. More... | |
bool | saveCodePointers = true |
Save information about code pointers. More... | |
bool | savePointerVas = true |
Save the pointer variable addresses in the results. More... | |
bool | savePointerAccesses = true |
Save information about where pointer variables are accessed. More... | |
bool | savePointerAccessValues = true |
Save pointer accessed values if pointer accesses are saved. More... | |
bool | savePointerDereferences = true |
Save information about where pointer values are dereferenced. More... | |
bool | savePointerDereferenceValues = true |
Save pointer dereferenced values if dereferences are saved. More... | |
uint64_t | symbolicTrimThreshold = std::numeric_limits<uint64_t>::max() |
Threshold for replacing large symbolic expressions with new variables. More... | |
size_t | maximumDataFlowIterationFactor = 5 |
Maximum data-flow iteration factor. More... | |
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 134 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 140 of file PointerDetection.h.
bool Rose::BinaryAnalysis::PointerDetection::Settings::saveDataPointers = true |
Save information about data pointers.
Definition at line 143 of file PointerDetection.h.
bool Rose::BinaryAnalysis::PointerDetection::Settings::saveCodePointers = true |
Save information about code pointers.
Definition at line 146 of file PointerDetection.h.
bool Rose::BinaryAnalysis::PointerDetection::Settings::savePointerVas = true |
Save the pointer variable addresses in the results.
Definition at line 149 of file PointerDetection.h.
bool Rose::BinaryAnalysis::PointerDetection::Settings::savePointerAccesses = true |
Save information about where pointer variables are accessed.
Definition at line 152 of file PointerDetection.h.
bool Rose::BinaryAnalysis::PointerDetection::Settings::savePointerAccessValues = true |
Save pointer accessed values if pointer accesses are saved.
Definition at line 155 of file PointerDetection.h.
bool Rose::BinaryAnalysis::PointerDetection::Settings::savePointerDereferences = true |
Save information about where pointer values are dereferenced.
Definition at line 158 of file PointerDetection.h.
bool Rose::BinaryAnalysis::PointerDetection::Settings::savePointerDereferenceValues = true |
Save pointer dereferenced values if dereferences are saved.
Definition at line 161 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 164 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 170 of file PointerDetection.h.