ROSE  0.11.102.0
Public Attributes | List of all members
Rose::BinaryAnalysis::PointerDetection::Settings Struct Reference

Description

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...
 

Member Data Documentation

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.


The documentation for this struct was generated from the following file: