summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2026-03-18document windows python work-aroundJordan Wiens
2026-03-17Bump ABI versions after change to operand list representationMark Rowe
2026-03-16Use a dedicated architecture picker when opening Universal Mach-O filesMark Rowe
2026-03-16Refactor where architecture selection is performed for universal binariesMark Rowe
Responsibility for selecting an architecture is moved out of `UniversalTransform` and into a new `ContainerOpenRequest` class. `UniversalTransform` still handles architecture selection in headless operation (for now).
2026-03-16Represent operand lists and label maps more efficiently within IL instructionsMark Rowe
Rather than using chains of `UNDEF` instructions, the contents of these lists are in a vector alongside the instructions. The instruction itself stores the entry count and offset into this second vector at which the associated items can be found. This improves analysis performance by around 2% and decreases memory usage by around 5%.
2026-03-14fix missing newline in docsJordan Wiens
2026-03-14add mentions of the final github repo earlier in the quark seriesJordan Wiens
2026-03-13quark docs too long, re-organize into a new section and splitJordan Wiens
2026-03-13add initial quark arch docs and fix up pages with invalid TOCsJordan Wiens
2026-03-13fix some broken documenation linksJordan Wiens
2026-03-11Command Palette: Fix remember last item for filter typesGlenn Smith
2026-03-11Add docs for `__attr`Glenn Smith
2026-03-11Enhance MemoryMap bindings and add support to re-enable disabled regions in ↵Brian Potchik
the UI.
2026-03-09Expose BNDetectSearchMode to Python API for search mode testing.Brian Potchik
2026-03-09Fix QueueGenerator GIL deadlock in search APIs.Brian Potchik
2026-03-06Implement DTPOFF64 and DTPMOD64 relocations.Alexander Taylor
Finally closes #5463.
2026-03-06Remove unused variable (skip-ci)Xusheng
2026-03-05Add mutex and recursive_mutex to bn::baseMark Rowe
On Apple platforms these wrap `os_unfair_lock`. On other platforms they're aliases for the std equivalents.
2026-03-05Add 'Open Selected Files with Container Browser...' to project browser ↵Brian Potchik
context menu.
2026-03-05Parse and display PE resource information in triage view. Fix ↵Xusheng
https://github.com/Vector35/binaryninja-api/issues/4052, fix https://github.com/Vector35/binaryninja-api/issues/5607
2026-03-04Add TypeLibrary::Register, to allow loading type libraries from scriptGlenn Smith
2026-01-27Fix MIPS64 relocation entry parsing.Alexander Taylor
2026-03-03add examples about triggering binexport headlesslyJordan Wiens
2026-03-03Fix MemoryRegionDialog prepopulating length for file backed regions.Brian Potchik
2026-02-27[MachO] Fix relocations from chained fixups not respecting addendsMark Rowe
The addends were correctly stored in the relocation info and displayed as offsets in linear view, but the relocation handlers never applied them. Reading from an address containing such a relocation would give an incorrect value.
2026-02-27[MachO] Ensure that weak bound symbols are not resolved to their import addressMark Rowe
Fixes https://github.com/Vector35/binaryninja-api/issues/7989. Also corrects an oversight from d92b3684 in handling of library ordinals >= 128.
2026-02-27[MachO] Fix incorrect handling of BIND_SPECIAL_DYLIB_*_LOOKUP in chained fixupsMark 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 referencesJosh Ferrell
2026-02-26Fix QualifiedName join from ffi and also support NameSpace joinGlenn Smith
2026-02-26Python: QName separator is actually called join by C++Glenn Smith
2026-02-26Pass separator to qname ctorGlenn Smith
2026-02-26fix[python]: missed mismatch for flag_namenullableVoidPtr
2026-02-26fix[python]: covariant user listsnullableVoidPtr
2026-02-26fix[python]: relax type children passed into factoriesnullableVoidPtr
2026-02-26fix[python]: BinaryView typesnullableVoidPtr
2026-02-26feat[python]: QualifiedName.separatornullableVoidPtr
2026-02-26fix[python]: CallingConvention.get_incoming_flag_valuenullableVoidPtr
2026-02-26Fix settings view layout and resize performance.Brian Potchik
2026-02-25Fix 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 pointersMark 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 containerMark 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-23Revert "validation for zero sized symbol or string tables"Brian Potchik
This reverts commit bcc40473b3660005e83f51150bdc17ae177768dc.
2026-02-23Revert "guard against empty .interp and .dynamic"Brian Potchik
This reverts commit 4573354f23da495099983dac4b665988cd837ff5.
2026-02-23[RTTI] Scope loggers to the associated viewMason Reed
2026-02-23[BNTL] Fix misc unused warningsMason Reed
2026-02-23Add global plugin command typeMason Reed
Register plugins which are available outside the context of a binary view
2026-02-23[BNTL] Misc improvementsMason Reed
2026-02-23[Rust] Misc documentation and cleanupMason Reed
2026-02-23[Rust] Ensure proper lifetime management of `WebsocketClientCallback` objectsMason Reed