Vector35 / Vector35/binaryninja-api

Better discoverability of parser error on Change Type dialog

Open
#3,300 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

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

Description

The error message that appears when changing function prototypes should be more understandable.

For example when I try to apply function prototype for DllMain function as BOOL __stdcall DllMain(HINSTANCE hinstDLL, DWORD fdwReason, LPVOID lpvReserved), it says "Error parsing specified type" but it is not clear what is wrong with it. In this example DWORD and LPVOID is unknown to BN. Modifying structures is different in a way that it shows exactly what is wrong about definition.

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 with the Change Type dialog and the function-prototype parsing path. Reproduce the DllMain example using the unknown DWORD and LPVOID types, then compare the resulting message with the structure-definition error behavior. Done means the parser error explains what is wrong with the specified type.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp
Domain
reverse-engineering
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.