| Age | Commit message (Collapse) | Author | |
|---|---|---|---|
| 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] 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] 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 | |
| 2025-05-12 | [Rust] Return `String` instead of `BnString` for cases where lossy ↵ | Mason Reed | |
| conversion can be tolerated Still need to go and audit all usage, but realistically the most important places to give the user control are with symbols, where the data can come from non utf8 sources This is still incomplete, I just looked for usage of -> BnString so any other variant was omitted. | |||
| 2025-05-12 | [Rust] Remove Architecture trait bound on LLIL related structures | Mason Reed | |
| 2025-05-12 | [Rust] Pretty print LLIL sub expressions | Mason Reed | |
| 2025-05-07 | [Rust] Add Function::variable_type | Mark Rowe | |
| 2025-05-04 | [Rust] Fix a pre-existing formatting issue | Mark Rowe | |
| CI is complaining about it. | |||
| 2025-05-04 | [Rust] Avoid leaking a reference within {Medium,High}LevelILFunction::ssa_form | Mark Rowe | |
| Return a Ref<_> so that the underlying core object will have its reference count decremented when the caller drops the object. | |||
| 2025-04-29 | Fix memory leak in when calling `Metadata::get_value_store` in Rust API | Mason Reed | |
| Forgot to free the `BNMetadataValueStore` object returned by core | |||
| 2025-04-26 | Misc rust formatting | Mason Reed | |
| 2025-04-26 | Add generate_ssa_form to LowLevelILFunction | Mark Rowe | |
| 2025-04-25 | std::function<bool(size_t,size_t)> ==> ProgressFunction | Glenn Smith | |
| 2025-04-23 | Add Function::Analyze API to perform on-demand function analysis. | Brian Potchik | |
| 2025-04-10 | Fix function type construction leaking in Rust API | Mason Reed | |
| 2025-04-08 | Misc rust formatting | Mason Reed | |
| 2025-04-08 | Fix workflow Rust API not returning refcounted objects | Mason Reed | |
| IDK why this was not done prior, leaking the returned core activity and workflow object. | |||
| 2025-04-01 | Rust: Better support for floating licenses | Glenn Smith | |
| 2025-03-28 | belated copyright year update | Jordan Wiens | |
| 2025-03-19 | Fix possible double free with platform recognizer in Rust API | Mason Reed | |
| 2025-03-10 | Add missing nullptr check for `cb_free_type_list` in Rust API | Mason Reed | |
| 2025-03-06 | Add API to insert Activities after a specified Activity. | Brian Potchik | |
| 2025-02-25 | Misc Rust formatting | Mason Reed | |
| 2025-02-25 | Check for enterprise keychain environment variable in Rust ↵ | Mason Reed | |
| `headless::license_location` We also likely need to check the _actual_ keychain (not the environment variable) later. | |||
| 2025-02-25 | Fix misc rust doc test | Mason Reed | |
| 2025-02-25 | Make `register_platform_recognizer` return by ref in Rust API | Mason Reed | |
| 2025-02-25 | Fix BnString usage of `as_ref` instead of `as_str` | Mason Reed | |
| Fixes `BnString::len` and `BnString::is_empty` incorrectly reporting 1 and true on empty null terminated string. | |||
| 2025-02-24 | Remove `is_floating_point` from `Type` impl Debug | Mason Reed | |
| It is unnecessary | |||
| 2025-02-24 | Add SVD Loader Plugin | Mason Reed | |
| 2025-02-24 | Fix default scope for settings QueryOptions in Rust API | Mason Reed | |
| 2025-02-24 | Add `BinaryViewExt::comment_at` and `BinaryViewExt::set_comment_at` | Mason Reed | |
| How did we not have this before? | |||
| 2025-02-24 | Implement Rust MemoryMap | Mason Reed | |
| Also split out SegmentFlags and fix some UB with the section creation | |||
| 2025-02-24 | Add platform recognizer to Rust API | Mason Reed | |
| 2025-02-18 | Remove function from Debug impl of MediumLevelILLiftedInstruction in Rust API | Mason Reed | |
| Causing unneeded noise in the debug print | |||
| 2025-02-18 | Fix the lifted GotoLabel in Rust printing the function in Debug impl | Mason Reed | |
| This was causing a lot of extra noise, where the function is kept just to ref for the tag name | |||
| 2025-02-18 | Fix Rust TagReference incorrectly holding a Tag reference | Mason Reed | |
| This caused a crash when a user called function.tags() on a function with tags | |||
| 2025-02-17 | Fix misc Rust formatting | Mason Reed | |
