Vector35 / Vector35/binaryninja-api

Types from imported headers clutter user types

Open
#6,212 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Effort: Medium Impact: Medium UI: Types
Dominant language
C++
Stars
1.3k
Forks
298
Avg merge
5d 5h
Merged PRs (30d)
19

Description

Additional Information:

I'm often using "Analysis > Import Header File" feature to include headers from external libraries used by a binary I'm analysing. This however means that I can no longer easily list all the types I created for the structures internal to the binary, as these are mixed together with all the imported types.

Is your feature request related to a problem?

Types from imported headers clutter other user types.

What is the feature you'd like to have?

Not sure what, but something that would resolve the problem.
Ideas:

  • Allow creating libraries and importing header file to libraries instead of user types.
  • Allow grouping user types and importing header file into specified group.
  • Automatically grouping imported types by filename.
  • Allow filtering manually created structures (i.e. not imported ones).

Are any alternative solutions acceptable?

Prefixing names of manually created types with some unique string. In theory could be done manually, but that's pretty cumbersome and error-prone.

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start at the Analysis > Import Header File workflow described in the issue and investigate how imported types and manually created user types are currently presented. Compare the proposed grouping, library, filename, and filtering approaches. Done means users can distinguish or isolate their manually created types without cumbersome name prefixes.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp
Domain
reverse-engineering
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.