| Age | Commit message (Collapse) | Author | |
|---|---|---|---|
| 2026-02-26 | Fix settings view layout and resize performance. | Brian Potchik | |
| 2026-02-25 | Fix a crash that could occur in TypeDialog if parser results arrived at the ↵ | Mark Rowe | |
| wrong time | |||
| 2026-02-24 | [DSC] Simplify file mapping to fix intermittent unrelocated pointers | Mark Rowe | |
| The `FileAccessorCache`'s LRU eviction could discard a file's mapped data after slide info had already been applied to it. Future accesses to the file produced a fresh mapping, but failed to reapply the slide info. This could result in pointers not correctly being slid, such as in https://github.com/Vector35/binaryninja-api/issues/7689. The LRU cache existed to stay within OS file descriptor limits, since the old `MappedFile` held its fd open for the lifetime of the mapping. There's no real reason for it to hold the file descriptor open like this. Closing it after `mmap` is sufficient to avoid the file descriptor limits. `MappedFileRegion` replaces the combination of `FileAccessorCache`, `WeakFileAccessor`, and `MappedFileAccessor`. It closes the fd immediately after mmap, so all files can stay mapped without consuming descriptors, making the cache unnecessary. `MappedFileRegion` is owned directly by the `CacheEntry` for its full lifetime. Slide info is applied exactly once to each `MappedFileRegion`. | |||
| 2026-02-23 | [x86] Intel APX support (#6423) | Avery | |
| Co-authored-by: Mason Reed <mason@vector35.com> | |||
| 2026-02-23 | [KernelCache] Automatically unwrap kernel caches within a full IMG4 container | Mark Rowe | |
| This builds on the existing support for opening kernel caches directly from IM4P payload files, and allows opening macOS kernel caches directly from `/System/Volumes/Preboot/<apfs-uuid>/boot/<boot-manifest-hash>/System/Library/Caches/com.apple.kernelcaches/kernelcache`. | |||
| 2026-02-23 | Revert "validation for zero sized symbol or string tables" | Brian Potchik | |
| This reverts commit bcc40473b3660005e83f51150bdc17ae177768dc. | |||
| 2026-02-23 | Revert "guard against empty .interp and .dynamic" | Brian Potchik | |
| This reverts commit 4573354f23da495099983dac4b665988cd837ff5. | |||
| 2026-02-23 | [RTTI] Scope loggers to the associated view | Mason Reed | |
| 2026-02-23 | [BNTL] Fix misc unused warnings | Mason Reed | |
| 2026-02-23 | Add global plugin command type | Mason Reed | |
| Register plugins which are available outside the context of a binary view | |||
| 2026-02-23 | [BNTL] Misc improvements | Mason Reed | |
| 2026-02-23 | [Rust] Misc documentation and cleanup | Mason Reed | |
| 2026-02-23 | [Rust] Ensure proper lifetime management of `WebsocketClientCallback` objects | Mason Reed | |
| 2026-02-23 | [Rust] Fix `OwnedBackgroundTaskGuard` requiring mutable self | Mason Reed | |
| 2026-02-23 | [Rust] Misc type library doc improvements | Mason Reed | |
| 2026-02-23 | [BNTL] Misc improvements | Mason Reed | |
| 2026-02-23 | [BNTL Utils] Fix misc clippy lints | Mason Reed | |
| 2026-02-23 | Add BNTL utility plugin | Mason Reed | |
| Allow users to easily create, diff, dump and validate type libraries Supports the following formats: - C header files (via core type parsers) - Binary files (collects exported and imported functions) - WinMD files (via `windows-metadata` crate) - Existing type library files (for easy fixups) - Apiset files (to resolve through forwarded windows dlls) Can be invoked as a regular plugin via UI commands or via CLI. Processing of type libraries inherently requires external linking, processing will automatically merge and deduplicate colliding type libraries so prefer to use inside a project or a directory and process all information (for a given platform) at once, rather than smaller invocations. | |||
| 2026-02-23 | [Rust] Misc documentation cleanup | Mason Reed | |
| 2026-02-23 | [BNTL] Allow decompressing standalone TypeLibrary objects | Mason Reed | |
| Previously you must have written the type library to disk | |||
| 2026-02-23 | [Rust] Add `TypeLibrary::remove_named_object` and ↵ | Mason Reed | |
| `TypeLibrary::remove_named_type` | |||
| 2026-02-23 | [Rust] Misc TypeLibrary API improvements | Mason Reed | |
| 2026-02-23 | [Python] Add `TypeLibrary.remove_named_object` and ↵ | Mason Reed | |
| `TypeLibrary.remove_named_type` | |||
| 2026-02-23 | [BNTL] Add API to remove data | Mason Reed | |
| Useful when relocating information between type libraries before finalization | |||
| 2026-02-23 | [Python] Add missing `TypeLibrary.duplicate` API | Mason Reed | |
| 2026-02-23 | [Rust] Update allowed licenses | Mason Reed | |
| 2026-02-23 | [Rust] Add `load_project_file` and `load_project_file_with_progress` | Mason Reed | |
| Use these when you intend to query through the `FileMetadata::project_file`, if you do not use these then you will be in a detached binary view from the originating project | |||
| 2026-02-23 | [Rust] Add `OwnedBackgroundTaskGuard` for finishing background task ↵ | Mason Reed | |
| automatically | |||
| 2026-02-23 | [Rust] Add a precondition check to make sure metadata has been pulled before ↵ | Mason Reed | |
| pulling remote projects | |||
| 2026-02-23 | [Rust] Impl `Send` and `Sync` for `RemoteProject` | Mason Reed | |
| 2026-02-23 | [Rust] Impl `Send` and `Sync` for `RemoteFolder` | Mason Reed | |
| 2026-02-23 | [Rust] Impl `Send` and `Sync` for `RemoteFile` | Mason Reed | |
| 2026-02-23 | [Rust] Refactor `FileMetadata` file information | Mason Reed | |
| - Rename and retype `FileMetadata::filename` and make the assignment required to happen at time of construction. - Add `FileMetadata::display_name` which is only to be used for presentation purposes. - Add `FileMetadata::virtual_path` for containers. - Rename `FileMetadata::modified` to `FileMetadata::is_modified` to be more consistent across codebase. - Add some missing documentation. - Add `BinaryView::from_metadata` with accompanying documentation. | |||
| 2026-02-23 | [Rust] Impl `Debug` for `RemoteFolder` | Mason Reed | |
| 2026-02-23 | [Rust] Impl `Debug` for `RemoteProject` | Mason Reed | |
| 2026-02-23 | [Rust] Fix clippy lints | Mason Reed | |
| 2026-02-23 | [Rust] Use `PathBuf` instead of `String` for include directories param in ↵ | Mason Reed | |
| `TypeParser` | |||
| 2026-02-23 | [Rust] Impl `From<BnString>` for `QualifiedName` | Mason Reed | |
| 2026-02-23 | [Rust] Fix unbalanced ref returned in `RemoteFile::core_file` | Mason Reed | |
| 2026-02-23 | [Rust] Misc documentation improvements | Mason Reed | |
| 2026-02-23 | [Rust] Fix rust version in `binaryninja` crate being outdated | Mason Reed | |
| Does not really effect anything but just saw it was still referencing old version. | |||
| 2026-02-23 | [Rust] Fix plugins being referenced in `cargo about` output | Mason Reed | |
| 2026-02-23 | [Rust] Impl `Send` and `Sync` for `TypeLibrary` | Mason Reed | |
| 2026-02-23 | [Rust] Fix UB when passing include directories to `CoreTypeParser` | Mason Reed | |
| 2026-02-23 | [Rust] Add `Symbol::ordinal` | Mason Reed | |
| 2026-02-23 | [Rust] Impl `Debug` for `BinaryViewType` | Mason Reed | |
| 2026-02-23 | [Rust] Add `BinaryViewExt::type_libraries` | Mason Reed | |
| 2026-02-23 | [Rust] Pass `type_reference` by ref to `TypeBuilder::named_type` | Mason Reed | |
| 2026-02-23 | [Rust] Improve API surrounding binary view type libraries | Mason Reed | |
| 2026-02-23 | [Rust] Provide setters useful for creating NTR references | Mason Reed | |
| Need to expose these setters, even if there usage is limited when dealing with NTR reference, something in the core might be unconditionally retrieving the width or alignment of the type without trying to resolve NTR. | |||
