Skip to content

Conversation

@EtchProject
Copy link

@EtchProject EtchProject commented Nov 30, 2022

Hi,

I've started porting Tenet for Binja. I used a decent chunk of code from your lighthouse plugin, and added the other necessary backend/gui portions for everything else.

binja

I've made changes that no longer make the plugin a generic plugin.

  • Changes to the docks
    • Binja doesn't look as clean with DockableWidgets, so I implemented them in the different UI areas
      • SidebarWidget (Registers)
      • SidebarWidget (Stack)
      • GlobalArea (Memory)
    • These changes make it so within each file, I instantiate a different object than the generic DockableWindow object IDA uses. This can be fixed by just moving the instantiation to the *api.py files I believe
  • Pyside6
    • I think Binja only supports Pyside6, there were various places where I have to update the names of static members that had changed from either Pyside2 or Pyside5 (Not sure which)
      • Example: I had to change event.pos() to event.position() in context.py wheelEvent

There's also stuff that needs cleaned up and unused code removed, but the plugin is in a working state for Binja and every feature mentioned in the readme is functioning. It should probably be placed onto it's own branch for the work that still needs done for making it generic and cleaning up.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants