summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2025-12-15[WARP] Misc cleanupMason Reed
2025-12-15[WARP] Skip non-defined function symbols when collecting constraintsMason Reed
Reduces the size of constraints, reducing the size of chunks.
2025-12-15[Rust] Add `Function::defined_symbol` to use when getting the default ↵Mason Reed
function symbol is not warranted
2025-12-15[WARP] Deduplicate matched functions within the matcher implicitlyMason Reed
Avoids having to coalesce function objects from multiple sources when enumerating for matched functions.
2025-12-15[MachO] Fix handling of relocations for self-bound data symbolsMark Rowe
Fixes https://github.com/Vector35/binaryninja-api/issues/7781.
2025-12-13[WARP] Fix `warp_headless` example not linking binaryninjacore (#7787)Mason Reed
Would result in binaryninjacore not being loaded: ``` dyld[19068]: Library not loaded: @rpath/libbinaryninjacore.1.dylib ``` Simply forgot to add build.rs to direct cargo at where to find the lib.
2025-12-13[Rust] Add more type library examples (#7786)Mason Reed
2025-12-12Generator: Detect flag enums and use IntFlag insteadGlenn Smith
Made possible by the new attributes in binja's type system.
2025-12-12Generator: Fix <4 byte signed enums with negative membersGlenn Smith
Literally only affects InvalidILViewType
2025-12-12Python: Make raw operand conversion functions privateGlenn Smith
Fixes Vector35/binaryninja-api#7782. Seems like these were missed in the refactor in de0b872e
2025-12-12add mention of windows defenderJordan Wiens
2025-12-11Use constexpr arrays for metadata about IL instruction operandsMark Rowe
This avoids constructing two unordered maps and numerous vectors for each IL level at library load time for each plug-in that uses the C++ API. Additionally, the arrays allow for more efficient look-ups.
2025-12-11Specify fixed underlying types for enums exposed by coreMark Rowe
This allows a few widely-used enums to be shrunk from 4 bytes to 1 byte, improving packing when they're used as struct members. To remain compatible with C, we follow CoreFoundation's approach and use a macro when defining the enum: ``` #if defined(__cplusplus) || __has_extension(c_fixed_enum) #define BN_ENUM(type, name) enum name : type #else #define BN_ENUM(type, name) typedef type name; enum #endif BN_ENUM(uint8_t, SomeEnum) { ... } ``` In C++ and C23 this will expand to an enum with a fixed underlying type. In older C language versions, this will result in the enum type being a typedef of the underlying type, with an unnamed enum providing the enum values. Minor changes were needed within the Python bindings to update places that made assumptions about the underlying type of the enums.
2025-12-11[ObjC] Don't override the core.function.metaAnalysis workflow descriptionMark Rowe
Fixes https://github.com/Vector35/binaryninja-api/issues/7770.
2025-12-11update docstring check script so we can include that in ciJordan Wiens
2025-12-11add script for validating white space in mkdocs, and many whitespace fixesJordan Wiens
2025-12-11[MIPS] Don't add a default branch type for jalrBrandon Miller
2025-12-11[MIPS] Mark `jalr[.hb] $zero, $ra` as a return instructionRong "Mantle" Bao
2025-12-11Plugin api docs typos fix (#7751)Max Stanchin
2025-12-11Remove misc stray backticks in python docs (#7776)utkonos
2025-12-11Fix misc formatting in docs (#7773)utkonos
2025-12-11[Rust] Implement data notification APIRubens Brandão
2025-12-10[Rust] Fix untyped `expr_idx` within MLIL `ILReferenceSource`Mason Reed
2025-12-10[Rust] Add APIs to retrieve type archives for a binary viewMason Reed
2025-12-10[Rust] New type for `TypeArchiveId`Mason Reed
Prevents type confusions considering there are at times, three different id types being referred to in the type archive API
2025-12-10[Rust] Add module comment to data rendererMason Reed
2025-12-10[Rust] Refactor `AnalysisProgress` returned from ↵Mason Reed
`BinaryViewExt::analysis_progress`
2025-12-10[Rust] Remove deprecated MLIL functionsMason Reed
These have been deprecated since last stable, so they will be removed now. I do believe that there might be some external users of this api so we should alert them.
2025-12-10[Rust] Impl `Display` for `FileMetadata`Mason Reed
2025-12-10[Rust] Impl `Display` for `Symbol`Mason Reed
2025-12-10[Rust] Add string reader helpers and fix `analysis_info`Mason Reed
- `analysis_info` was causing a double free with function refs, also did not need to be wrapped in a Result
2025-12-10[Rust] More architecture module documentation and misc cleanupMason Reed
2025-12-10[Rust] Add simple architecture testsMason Reed
Still need to add a custom architecture for unit tests like in python
2025-12-10[Rust] Make `InstructionTextToken` field `expr_index` optionalMason Reed
There was a TODO there to document that it is optional, we should just wrap it in `Option` instead.
2025-12-10[Rust] Remove `UnusedRegisterStackInfo` and update architecture documentationMason Reed
2025-12-10[Rust] Add misc documentationMason Reed
2025-12-10[Rust] Misc cleanup for ABBMason Reed
2025-12-10[Rust] Impl `Display` for `VersionInfo`Mason Reed
2025-12-10[Rust] Move architecture module code into more reasonable filesMason Reed
To keep backwards compatibility for commonly referenced code we re-export them within the architecture module. Also does some light refactoring of some newly added APIs to keep them more consistent with other parts of the codebase.
2025-12-10[Rust] Remove redundant `ArchAndAddr` typeMason Reed
Use `Location` instead, `arch` can be a nullptr
2025-12-10[Rust] Fix leaking list in `Function::guided_source_blocks`Mason Reed
Forgot to call `BNFreeArchitectureAndAddressList`, also use `Location` instead of `ArchAndAddr`.
2025-12-10[Rust] Add `LowLevelILSSARegister` type (#7745)Mason Reed
2025-12-10[Rust] Fix crash when calling `LowLevelILFunction::generate_ssa_form` ↵Mason Reed
without an owner You cannot generate SSA form of an LLIL function without a backing function unfortunately.
2025-12-09Fix show_message_box crashing with `None` description in Python (#7748)utkonos
2025-12-09[Rust] Fix misc formattingMason Reed
2025-12-09Python: Fix enums not being casted to their types in generatorGlenn Smith
2025-12-09[DWARF Import] Do not link functions without addresses to externsJosh Ferrell
2025-12-08Allow overriding the IL source location that is used by *ILInstruction::CopyToMark Rowe
2025-12-08[KernelCache] Wrap section creation within BeginBulkAddSegments / ↵Mark Rowe
EndBulkAddSegments This defers rebuilding of the section map until after all sections for an image have been added, rather than having the section map be rebuilt after adding each section.
2025-12-08[DSC] Wrap section creation within BeginBulkAddSegments / EndBulkAddSegmentsMark Rowe
This defers rebuilding of the section map until after all sections for an image have been added, rather than having the section map be rebuilt after adding each section.