Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

BinExport2 backend #1950

Merged
merged 252 commits into from
Sep 12, 2024
Merged

BinExport2 backend #1950

merged 252 commits into from
Sep 12, 2024

Conversation

williballenthin
Copy link
Collaborator

@williballenthin williballenthin commented Jan 26, 2024

closes #1755

This PR adds support for BinExport2 files generated via the Ghidra BinExport exporter extension. Supported file types include PE and ELF files, supported architectures include Intel 32- and 64-bit and ARM 64-bit. Support for additional BinExport exporters, file types, and architectures should be added as-needed following the merge of this PR.

TODO:

Checklist

  • No CHANGELOG update needed
  • No new tests needed
  • No documentation update needed

williballenthin and others added 30 commits January 25, 2024 11:33
[wip] since there are a few references to BinExport2
that are in progress elsewhre. Next commit will remove them.
Co-authored-by: Moritz <mr-tz@users.noreply.github.com>
@mike-hunhoff
Copy link
Collaborator

mike-hunhoff commented Aug 29, 2024

mr-tz and others added 12 commits September 9, 2024 10:48
add pruning phase to expression tree building
to remove known-bad branches. This might address
some of the data we're seeing due to:
NationalSecurityAgency/ghidra#6821

Also introduces a --instruction optional argument
to dump the details of a specific instruction.
Introduce intruction pattern matching to declaratively
describe the instructions and operands that we want to
extract. While there's a bit more code, its much more
thoroughly tested, and is less brittle than the prior
if/else/if/else/if/else implementation.
@mr-tz
Copy link
Collaborator

mr-tz commented Sep 12, 2024

I think there's only these now outstanding:

Anything else before we can merge?

@mike-hunhoff
Copy link
Collaborator

Done with 765f434

Copy link
Collaborator

@mr-tz mr-tz left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM! Great work everyone!

@mike-hunhoff mike-hunhoff merged commit ee17d75 into master Sep 12, 2024
24 checks passed
@mike-hunhoff mike-hunhoff deleted the feat/1755 branch September 12, 2024 16:09
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
binexport related to BinExport support enhancement New feature or request
Projects
None yet
Development

Successfully merging this pull request may close these issues.

investigate feasibility of a BinExport2 backend
4 participants