summaryrefslogtreecommitdiff
path: root/rust/src
AgeCommit message (Collapse)Author
2025-10-07[Rust] Fix save file dialog not respecting default file pathMason Reed
Fixes https://github.com/Vector35/binaryninja-api/issues/7268
2025-10-02[Rust] Fix misc typoMason Reed
2025-10-02[Rust] Improvements to LLIL flag and intrinsic operationsJames Johnson
2025-10-02[Rust] Add support for activity eligibility predicates involving platformsMark Rowe
2025-09-30Make Project::{from_raw,ref_from_raw} pubJosh Ferrell
2025-09-30Fix rust api formatting warningsJosh Ferrell
2025-09-29Fix rust warnings about lifetimes introduced by 1.89.0Josh Ferrell
2025-09-29Fix Rust LowLevelILFunction owner function methodBrandon Miller
LowLevelILFunction objects can be constructed without a owner function. BNGetLowLevelILOwnerFunction can return NULL and must be checked before creating a Function object.
2025-09-29Rust APIs needed for guided analysis modeBrandon Miller
Required for implementing guided analysis mode in custom implementations of analyze_basic_blocks
2025-09-29Rust binding for LLVM MC disassemblerBrandon Miller
2025-09-29Make rust il.undefined return a ValueExpr for use as a sub-exprBrandon Miller
2025-09-29Add a new line disassembly text tokenBrandon Miller
2025-09-29Rust bindings for custom basic block analysisBrandon Miller
2025-09-24Fix HighLevelILInstruction CoreArrayProvider using instr index instead of ↵Josh Ferrell
expr index
2025-09-17[Rust] Add TypeBuilder::set_child_typeMark Rowe
2025-09-17Fix a Rust formatting issueMark Rowe
2025-09-15Deprecate some Rust MediumLevelILFunction methods in favor of Function ↵Josh Ferrell
implementations
2025-09-07[Rust] Support pointer base types and offsetsLukBukkit
2025-09-03Fix user stack var rust APIsJosh Ferrell
2025-08-27Rewrite Obj-C workflow in RustMark Rowe
This is functionally equivalent to the previous workflow_objc, with the following changes: 1. It mutates the `core.function.metaAnalysis` workflow rather than registering a new named workflow. The activities now all check for the presence of the Objective-C metadata added by `ObjCProcessor` to determine whether they should do work, rather than relying on `MachoView` to override the function workflow when Objective-C metadata is present. This fixes https://github.com/Vector35/binaryninja-api/issues/6779. 2. The auto-inlining of `objc_msgSend` selector stub functions is performed in a separate activity from the processing of `objc_msgSend` call sites. The selector stub inlining activity is configured so that it does not run in `DSCView` as the shared cache needs different behavior for stub functions more generally that `SharedCacheWorkflow` already provides. 3. The way that types like `id` and `SEL` are referenced is fixed so that they show up as `id` rather than `objc_struct*`. This also replaces the Objective-C portion of the shared cache's workflow, and incorporates several bug fixes that had been applied to it but not the standalone Objective-C workflow.
2025-08-27[Rust] Fix a couple of oversights in the APIMark Rowe
1. Some SSA-specific functions are now implemented on `LowLevelILFunction<M, SSA>` rather than `Ref<LowLevelILFunction<M, SSA>>`. 2. A lifting helper for `LLIL_TAILCALL` is added to `LowLevelILFunction`. 3. `PossibleValueSet::ImportedAddressValue` now holds the value.
2025-08-27[Rust] Add LowLevelILFunction::{get_ssa_register_value, get_ssa_flag_value}Mark Rowe
These are available on `LowLevelILFunction<M, SSA>`.
2025-08-20[Rust] Fix misc inconsistencies in `2ba29fd`Mason Reed
2025-08-20[Rust] Add project path file retrieval related functionsMason Reed
2025-08-20Deprecate Workflow::Instance in favor of Workflow::Get and Workflow::GetOrCreateMark Rowe
Calls to `Workflow::Instance` that were looking up a built-in workflow name are updated to use `Workflow::Get`. Others use `Workflow::GetOrCreate`.
2025-08-13[Rust] Add builder API for creating workflowsMark Rowe
`Workflow::new` is replaced by `Workflow::build` that returns a `Builder` type that supports the operations that mutate a workflow, such as registering activities. `Workflow::instance` is replaced by `Workflow::get` to make clear that it is intended to look up an existing workflow. `Workflow::cloned` is introduced to wrap the common pattern of retrieving an existing workflow and cloning it with the same name in order to modify it. `Builder::activity_before` / `Builder::activity_after` are introduced to wrap the common pattern of registering an activity then inserting it before or after a given activity.
2025-08-13[Rust] Add a type-safe builder API for Activity configurationMark Rowe
This makes it possible to see what structure the configuration takes and eliminates errors due to typos in JSON string literals.
2025-08-13[Rust] Fix warnings about names that are not snake caseMark Rowe
The names can simply be omitted since they are only mentioned in the declaration of a function pointer.
2025-08-06[Rust] Take download callbacks by reference to avoid boxingMason Reed
2025-08-03[Rust] Misc formattingMason Reed
2025-08-01Add LogForException APIs to pass stack trace information separate from the ↵Rusty Wagner
message
2025-07-30Change rust project APIs to accept "impl AsRef<Path>" instead of "&str" for ↵Josh Ferrell
path arguments
2025-07-29Add MemoryMap::add_unbacked_memory_region to rust apiJosh Ferrell
2025-07-28[Rust] Misc formattingMason Reed
2025-07-28[Rust] Add `BinaryViewExt::image_base`Mason Reed
2025-07-28[Rust] Add docs for what the boolean return value does for some specific ↵Mason Reed
"progress" like callbacks Still need to add more, consider changing the boolean to an enum that describes it better, so we do not need to copy paste docs around.
2025-07-24make fields of LookupTableEntry publicalan
2025-07-22Fix non-clickable force analysis with rust render layer onMason Reed
Fixes https://github.com/Vector35/binaryninja-api/issues/7139
2025-07-17[Rust] Misc fixes / formattingMason Reed
- Fix cmake clean not cleaning target docs - Fix not prioritizing enterprise remote in collab tests - Some misc formatting - Fix incorrect assert in binary loading
2025-07-17[Rust] Misc formatting fixesMason Reed
2025-07-15Add the ability to limit the number of results in the cross reference APIsRusty Wagner
2025-07-15[Rust] Update some testsMason Reed
2025-07-15[Rust] Add `BinaryView::search` and friendsMason Reed
2025-07-15Move LLIL instruction retrieval into the LLIL function where it belongsMason Reed
The python API was kept the same seeing as we are close to the release, will likely start deprecating some of those API's soon.
2025-07-06[Rust] Add `FileMetadata::forget_undo_actions`Mason Reed
Need this for WARP, see next commit
2025-07-06[Rust] Make `ReportCollection::add_*` optionally take a viewMason Reed
To allow for creating reports outside the context of a view
2025-07-06[Rust] Fix typo for `MediumLevelILFunction::live_instruction_for_variable` paramMason Reed
2025-07-06[Rust] Fix MLIL function expression index usage in place of instruction indexMason Reed
Discovered when poking at variable values in WARP
2025-07-04[Rust] Fix double precision expression low level IL definitionMason Reed
2025-07-04[WARP] Fix possible skipped instructions when multiple IL expressions are ↵Mason Reed
appended for a given instruction