Vector35 / Vector35/binaryninja-api
Tags don't associate correctly with ArchitectureHook after save and load
Nobody has claimed this yet.
- Dominant language
- C++
- Stars
- 1.3k
- Forks
- 298
- Avg merge
- 5d 5h
- Merged PRs (30d)
- 19
Description
Version and Platform (required):
- Binary Ninja Version: stable & dev
- OS: OSX at least
- OS Version: Catalina
Bug Description:
I've only tested this in c++ but I assume it exists in python as well.
(function instance)->CreateUserAddressTag() will accept an ArchitectureHook as the first argument and it works as expected.
When the database is saved and reopened, the tag(s) will not show up in (function instance)->GetAdressTagsOfType() if you give the ArchitectureHook as the first argument. The tag(s) still exist but they seem to be associated with the base architecture instead of the ArchitectureHook.
Expected Behavior:
Either don't allow an ArchitectureHook to be passed in or have it use the base Architecture under the hood automatically.
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Reproduce the behavior with CreateUserAddressTag() and GetAdressTagsOfType() using an ArchitectureHook, then save and reopen the database to confirm the association changes. Trace how ArchitectureHook and the base architecture are represented during tag persistence; done means the hook is rejected or tags are consistently resolved through the base architecture after reload.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- cpp
- Domain
- api, reverse-engineering
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 42/100