| Age | Commit message (Collapse) | Author | |
|---|---|---|---|
| 2025-05-12 | [Rust] Keep `TypeArchiveSnapshotId` as a c_str when passing to core | Mason Reed | |
| 2025-05-12 | [Rust] Add type library example | Mason Reed | |
| 2025-05-12 | [Rust] Add type library tests | Mason Reed | |
| 2025-05-12 | [Rust] Add `Platform::get_type_library_by_name` | Mason Reed | |
| 2025-05-12 | [Rust] Enclose the `BnString` with "" in the `Debug` impl | Mason Reed | |
| 2025-05-12 | [Rust] Misc type library cleanup | Mason Reed | |
| 2025-05-12 | [Rust] Add `Display` and `Debug` impl to `Metadata` | Mason Reed | |
| 2025-05-12 | [Rust] Make TypeLibrary ref counted | Mason Reed | |
| And some other misc cleanup | |||
| 2025-05-12 | [Rust] Add type printer tests | Mason Reed | |
| 2025-05-12 | [Rust] Misc cleanup | Mason Reed | |
| 2025-05-12 | [Rust] Add missing instruction types to MLIL | Mason Reed | |
| 2025-05-12 | [Rust] Simplify operand list retrieval for MLIL and HLIL | Mason Reed | |
| 2025-05-12 | [Rust] Remove extra assert in flowgraph example | Mason Reed | |
| 2025-05-12 | [Rust] Check lifted call for params and output in mlil test | Mason Reed | |
| 2025-05-12 | [Rust] Remove useless alias function | Mason Reed | |
| 2025-05-12 | [Rust] Don't panic when a Rust plug-in encounters an unhandled MLIL instruction | Mark Rowe | |
| `MediumLevelILInstruction` does not yet handle `MLIL_CALL_OUTPUT`, `MLIL_CALL_PARAM`, `MLIL_CALL_PARAM_SSA`, `MLIL_CALL_OUTPUT_SSA`, `MLIL_MEMORY_INTRINSIC_OUTPUT_SSA`, or `MLIL_MEMORY_INTRINSIC_SSA`. Map these to a `NotYetImplemented` kind rather than panicking since a panic takes down the entire app. | |||
| 2025-05-12 | [Rust] Flowgraph API improvements | Mason Reed | |
| 2025-05-12 | [Rust] Interaction handler API fixes | Mason Reed | |
| 2025-05-12 | [Rust] Misc cleanup | Mason Reed | |
| 2025-05-12 | [Rust] Consult secrets provider when trying to connect to a remote | Mason Reed | |
| 2025-05-12 | [Rust] Move `BinaryReader` and `BinaryWriter` into `binary_view` module | Mason Reed | |
| Both of these are associated directly to a `BinaryView` and only exist as accessors onto it. | |||
| 2025-05-12 | [Rust] Remove `NonSSAVariant` bound from `LowLevelILFunction` | Mason Reed | |
| We don't do enough with the lifted il != non lifted il to justify the bound. This makes modifying IL much less work as the historical lifted il bound is gone. | |||
| 2025-05-12 | [Rust] Add Assert and ForceVersion LLIL operations | Mason Reed | |
| 2025-05-12 | [Rust] Add `CoreRegister` name to the `Debug` impl | Mason Reed | |
| 2025-05-12 | [Rust] Remove unneeded mut from Architecture trait signatures | Mason Reed | |
| These are never expressed, just adds another unneeded constraint on the impl | |||
| 2025-05-12 | [Rust] Support SSA form properly in low level IL | Mason Reed | |
| 2025-05-12 | [Rust] Fix misc typos | Mason Reed | |
| 2025-05-12 | [Rust] Flow graph API improvements | Mason Reed | |
| - Fixed some misc bugs - Added real FlowGraphEdge type - Added accessors for node edges - Added interaction handler to the flow graph example to dump the flow graph to stdin - Split out the flow graph API into smaller files | |||
| 2025-05-12 | [Rust] Misc cleanup | Mason Reed | |
| 2025-05-12 | [Rust] Implement custom interactive handler | rbran | |
| 2025-05-12 | [Rust] Add doc comments for undo actions | Mason Reed | |
| 2025-05-12 | [Rust] Implement `LanguageRepresentation` and `LineFormatter` | rbran | |
| 2025-05-12 | [Rust] Improve `FileAccessor` | Mason Reed | |
| - Add unit tests - Expose read/write functionality - Add some much needed documentation when passing to memory map | |||
| 2025-05-12 | [Rust] Metadata API improvements | Mason Reed | |
| - Don't use Result for some or none values - Fix freeing of key value store objects - Improve ergonomics a little bit - Add unit tests | |||
| 2025-05-12 | [Rust] Construct a `SectionBuilder` from a `Section` | Mason Reed | |
| 2025-05-12 | [Rust] Correct impls for `Section` | Mason Reed | |
| Previously we were comparing the section raw pointer and hashing it | |||
| 2025-05-12 | [Rust] Retain core string for section strings | Mason Reed | |
| Might want to key off the section string in the core, so we should give it back as a `BnString` | |||
| 2025-05-12 | [Rust] Add section tests | Mason Reed | |
| 2025-05-12 | [Rust] Reduce usage of `IntoCStr` in function signatures | Mason Reed | |
| This is being done to reduce complexity in function signatures, specifically many of the strings we are passing ultimately should be new types themselves instead of "just strings", things such as type ids. Another place which was confusing was dealing with filesystem related APIs, this commit turns most of those params into a stricter `Path` type. This is bringing the rust api more inline with both python and C++, where the wrapper eagerly converts the string into the languages standard string type. Special consideration must be made for symbols or other possible non utf-8 objects. This commit will be followed up with one that adds the `IntoCStr` bound on API's we want to keep as invalid utf-8 so we can for example, get section by name on a section with invalid utf-8. | |||
| 2025-05-12 | [Rust] Add string tests | Mason Reed | |
| 2025-05-12 | [Rust] Rename `AsCStr` to `IntoCStr` | Mason Reed | |
| 2025-05-12 | [Rust] Misc clippy lints | Mason Reed | |
| 2025-05-12 | [Rust] More cleanup regarding `BnString` | Mason Reed | |
| - Removed `to_string` shortcut from `BnString`. - Misc formatting | |||
| 2025-05-12 | [Rust] Make `Section::name` return `BnString` | Mason Reed | |
| Section names come from the binary itself, we want to preserve the name as is | |||
| 2025-05-12 | [Rust] Simplify usage surrounding c strings | Mason Reed | |
| `cstring.as_ref().as_ptr() as *const c_char` -> `cstring.as_ptr()` `cstring.as_ref().as_ptr() as *mut _` -> `cstring.as_ptr()` `cstring.as_ptr() as *const c_char` -> `cstring.as_ptr()` With a few fixes for cstrings that might be dropped prematurely. | |||
| 2025-05-12 | [Rust] Simplify `BnStrCompatible` trait | Mason Reed | |
| Followup to https://github.com/Vector35/binaryninja-api/pull/5897/ This simplifies usage of the trait in user code, should just be able to `to_cstr` to get the cstr repr and then call `as_ptr`. Co-authored-by: Michael Krasnitski <michael.krasnitski@gmail.com> | |||
| 2025-05-12 | [Rust] Simplify enterprise initialization | Mason Reed | |
| We don't need to introduce extra global state when the goal is to not release floating licenses in shutdown. | |||
| 2025-05-12 | [Rust] Misc clippy lints | Mason Reed | |
| 2025-05-12 | [Rust] More cleanup | Mason Reed | |
| 2025-05-12 | [Rust] Remove unused file | Mason Reed | |
