pub struct AnalysisConfig {
pub enable_disassembly: bool,
pub disassembly_engine: DisassemblyEngine,
pub enable_control_flow: bool,
pub enable_call_graph: bool,
pub enable_cognitive_complexity: bool,
pub enable_advanced_loops: bool,
pub enable_entropy: bool,
pub enable_symbols: bool,
pub max_analysis_size: usize,
pub max_disassembly_instructions: usize,
pub architecture_hint: Option<Architecture>,
pub call_graph_config: Option<CallGraphConfig>,
}Expand description
Configuration for binary analysis
Fields§
§enable_disassembly: boolEnable disassembly analysis. Disabled by default.
disassembly_engine: DisassemblyEnginePreferred disassembly engine
enable_control_flow: boolEnable control flow analysis. Disabled by default.
enable_call_graph: boolEnable call graph analysis. Disabled by default.
enable_cognitive_complexity: boolEnable cognitive complexity calculation. Disabled by default.
enable_advanced_loops: boolEnable advanced loop analysis. Disabled by default.
enable_entropy: boolEnable entropy analysis. Disabled by default.
enable_symbols: boolEnable symbol demangling. Disabled by default.
max_analysis_size: usizeMaximum accepted input size and high-level disassembly byte budget.
BinaryAnalyzer::analyze and BinaryAnalyzer::analyze_binary return
BinaryError::InputTooLarge when the input exceeds this value.
max_disassembly_instructions: usizeMaximum number of instructions returned by high-level disassembly.
This is independent of Self::max_analysis_size so an allowed input
cannot expand into an unbounded instruction/result allocation.
architecture_hint: Option<Architecture>Architecture hint (None for auto-detection)
call_graph_config: Option<CallGraphConfig>Call graph configuration
Implementations§
Source§impl AnalysisConfig
impl AnalysisConfig
Sourcepub fn validate(&self) -> Result<()>
pub fn validate(&self) -> Result<()>
Validate that every requested runtime analysis was compiled into the crate.
Cargo features are compile-time capabilities; setting a runtime boolean
cannot enable a missing implementation. Analysis entry points call this
method automatically and return BinaryError::FeatureNotAvailable for
an unavailable request.
Trait Implementations§
Source§impl Clone for AnalysisConfig
impl Clone for AnalysisConfig
Source§fn clone(&self) -> AnalysisConfig
fn clone(&self) -> AnalysisConfig
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more