| Age | Commit message (Collapse) | Author |
|
|
|
|
|
view callbacks
|
|
- Added more documentation
- Replaced global named logger for plugins, fixing the issue when the CU has multiple (e.g. statically linked demo)
- Simplified some misc code
This is a breaking change, but I believe there is no better time to make it, we cannot continue to use the `log` crate, it is too limited for our needs.
|
|
DW_AT_location variants for a DW_TAG_variable
|
|
|
|
|
|
Apart of fixes for https://github.com/Vector35/binaryninja-api/issues/7827
This also makes vtable type names refer to base class vtable type name, this was the original behavior, but it should be revisited later.
|
|
|
|
|
|
|
|
Fixes some possible nondeterminism due to parallelized matching
|
|
|
|
Reduces the size of constraints, reducing the size of chunks.
|
|
function symbol is not warranted
|
|
Avoids having to coalesce function objects from multiple sources when enumerating for matched functions.
|
|
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.
|
|
Fixes https://github.com/Vector35/binaryninja-api/issues/7770.
|
|
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.
|
|
|
|
|
|
Fixes https://github.com/Vector35/binaryninja-api/issues/7666.
Correctly managing the state of bulk symbol modifications via
`BeginBulkModifySymbols` / `EndBulkModifySymbols` is error-prone in the
face of exceptions and early returns. Leaking a bulk symbol modification
can leave the view in a state where no further changes to symbols will
be applied.
All users of the C++ API are encouraged to move from
`BeginBulkModifySymbols` / `EndBulkModifySymbols` to the new
`BulkSymbolModification` class.
|
|
We already do this for a number of plugins / crates, this commit goes over the rest to make sure that they all do this.
We keep cleaning binaryninjacore-sys as we want to generate the core bindings immediately on changes to binaryninjacore.h
|
|
These are introduced after changing to Rust 1.91.1
|
|
|
|
shared cache
Dataflow is now used to determine call targets when detecting calls to
reference counting runtime functions. The previous approach of matching
on specific instructions missed some patterns that are common in the
shared cache.
|
|
explicit type
Helps with windows functions where we had previously defined the signature
|
|
Fixes https://github.com/Vector35/binaryninja-api/issues/7705
RTTI processing with malformed sections can still cause prolonged analysis, in extreme cases like the binary in the issue needing the user to stop the RTTI processing once it gets to the Itanium RTTI pass. More work to be done, I would like to solve this with some section heuristics using the sections/segments entropy.
|
|
the previous pass
|
|
|
|
Should have the same behavior as doing it on a directory
|
|
Can be triggered by trying to run the processor on a file with no functions.
Found this while doing misc performance testing on windows.
|
|
|
|
|
|
|
|
Fixes https://github.com/Vector35/binaryninja-api/issues/7646
Also cleaned up and added some more context to the `NamedTypeReference::target` function.
|
|
|
|
When running the command "WARP\\Load File" it will create a new container and add it to the global container list, we need to show this in the UI
|
|
Fixes cases where the user signature directory for some reason has not been created, typically the directory will exist as the sigkit runner will also try and create the directory.
|
|
|
|
|
|
Its not critical, but I still want it to be visible when it fails
|
|
Fixes https://github.com/Vector35/binaryninja-api/issues/7266
|
|
The down and enter keys now preserve an existing selection in the
associated list or table views, rather than unconditionally selecting or
activating the first item.
|
|
Removes the need to book keep on the caller side
|
|
This allows connections to enterprise servers without requiring the default download provider to be switched in settings
|
|
|
|
|
|
Also adds support for parsing bitfields in PDB, DWARF and SVD plugins
WIP: API needs to be considered more, also need to find type related apis that may need to be rethought.
|
|
Adds WARP, DWARF Import and Objective-C plugins to free
|