Skip to main content

Crate ghidra

Crate ghidra 

Source
Expand description

Typed Rust bindings for an embedded Ghidra JVM.

This crate owns the Ghidra bridge and exposes lifecycle handles plus typed program, listing, decompiler, and metadata models. It deliberately stops at Ghidra primitives - higher-level extraction or schema mapping belongs in consumer crates.

Structs§

Address
Program address with address-space, numeric offset, and Ghidra display text.
AddressRange
Address range reported by Ghidra.
AnalysisOptions
Analysis options for a program.
AnalysisReport
Result metadata from a Ghidra analysis request.
BasicBlockInfo
Basic block in a control-flow graph.
CallGraphEdge
Program call graph edge.
CallGraphNode
Program call graph node.
ControlFlowEdgeInfo
Edge between basic blocks.
ControlFlowGraph
Basic-block control-flow graph.
DataFlowEdge
Edge between data-flow nodes.
DataFlowGraph
Data-flow graph derived from high P-code.
DataFlowOp
Data-flow operation node.
DataFlowVariable
Data-flow variable node.
DataFlowVarnode
Data-flow varnode node.
DataInfo
Defined data item.
DecompileOptions
Options for a single decompile request.
DecompileResult
Result of one decompiler request.
Decompiler
Reusable decompiler session for a program.
ExportInfo
Program entry point exported by Ghidra for a function.
FunctionControlFlowGraph
A function descriptor paired with its basic-block control-flow graph.
FunctionDescriptor
A function entry point and display name from a Ghidra program listing.
FunctionPrototype
Function prototype recovered by the decompiler.
FunctionSummary
Function-local facts collected from listing, symbol, reference, and source-map APIs.
Ghidra
Entry point for project and program operations.
GhidraRuntime
Started embedded Ghidra JVM.
HighPcodeBlock
High P-code basic block.
HighPcodeGraph
High P-code blocks, edges, and operations for a function.
HighSymbol
High-level symbol recovered by the decompiler.
ImportInfo
External symbol referenced by a function.
InstructionInfo
Listing instruction.
LaunchOptions
Options for starting the embedded Ghidra JVM.
LoadedProgram
Result of opening or importing a program.
LoaderArgument
Loader argument passed to Ghidra during import.
MemoryBlockInfo
Program memory block.
NamedCount
Name/count pair used by aggregate summaries.
OperandInfo
Instruction operand.
PcodeOpInfo
P-code operation.
PcodeSummary
Counts and aggregate P-code facts for a decompiled function.
Program
Open Ghidra program handle tied to its owning project.
ProgramCallGraph
Program-level call graph.
ProgramEnumValue
Enum member metadata.
ProgramFunction
Program function metadata record.
ProgramFunctionSignature
Program function signature metadata.
ProgramLoadInfo
Result metadata from opening or importing a program.
ProgramLoadOptions
Options for opening or importing a binary into a project.
ProgramMetadata
Program-wide symbols, functions, and recursive type metadata.
ProgramOpenOptions
Options for opening an already-imported program.
ProgramParameter
Program function parameter metadata.
ProgramPath
Program path inside a Ghidra project.
ProgramSymbol
Program symbol metadata record.
ProgramTransaction
Open Ghidra transaction.
ProgramType
Recursive program type metadata record.
ProgramTypeComponent
Structure or union component metadata.
ProgramTypeIndex
Borrowed index for resolving ProgramType records by ID.
Project
Open Ghidra project handle.
ReferenceInfo
Reference from one address to another.
SourceMapInfo
Best source-file identity Ghidra can associate with a function.
SymbolInfo
Symbol-table entry.
TaskMonitorOptions
Bridge task monitor configuration.
TaskMonitorReport
Final state reported by a Ghidra task monitor.
VarnodeInfo
P-code varnode.

Enums§

AnalysisMode
Analysis mode to apply before extraction or API reads.
DecompileStatus
Terminal status of a decompiler request.
Error
Error returned by Ghidra bridge and API operations.
ExportKind
Kind of exported program entry point.
ImportKind
Kind of external symbol referenced by a function.
ProgramTypeDetails
Recursive type variant details.
ProgramTypeIndexError
Error returned when building or traversing a program type index.
RuntimeError
Error returned while discovering Ghidra or starting the embedded JVM.
SymbolKind
Ghidra symbol kind.
SymbolSource
Source of a Ghidra symbol.

Functions§

start
started

Type Aliases§

Result
Result type used by this crate.