| Age | Commit message (Collapse) | Author | |
|---|---|---|---|
| 2026-02-27 | [MachO] Fix incorrect handling of BIND_SPECIAL_DYLIB_*_LOOKUP in chained fixups | Mark Rowe | |
| These lookup modes are negative values that are encoded in the library ordinal, an unsigned field, of an import fixup entry. Incorrect sign extension when converting these ordinals back to signed values led to them being misinterpreted. | |||
| 2026-02-26 | [DWARF Import] Do not wrap function parameter types in named type references | Josh Ferrell | |
| 2026-02-26 | Fix QualifiedName join from ffi and also support NameSpace join | Glenn Smith | |
| 2026-02-26 | Python: QName separator is actually called join by C++ | Glenn Smith | |
| 2026-02-26 | Pass separator to qname ctor | Glenn Smith | |
| 2026-02-26 | fix[python]: missed mismatch for flag_name | nullableVoidPtr | |
| 2026-02-26 | fix[python]: covariant user lists | nullableVoidPtr | |
| 2026-02-26 | fix[python]: relax type children passed into factories | nullableVoidPtr | |
| 2026-02-26 | fix[python]: BinaryView types | nullableVoidPtr | |
| 2026-02-26 | feat[python]: QualifiedName.separator | nullableVoidPtr | |
| 2026-02-26 | fix[python]: CallingConvention.get_incoming_flag_value | nullableVoidPtr | |
| 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 | |
