Vector35 / Vector35/binaryninja-api
namespace abstraction for functions
Nessuno ha ancora preso questa issue.
- Lingua principale
- C++
- Stelle
- 1.3k
- Fork
- 298
- Merge medio
- 5g 5h
- PR unite (30g)
- 19
Descrizione
What is the feature you'd like to have?
Please provide a clear and concise description of what you want.
Ability to give function namespace. For example if I name function A::B::Func , test::hello and test::world i should be able to query new api bv.find_function_by_name("hello" , namespace::test) or `bv.find_function_by_name("Func", namespace::A::B)
This will be cool because of three things
- When #2693 gets implemented. it would be cool to have a folder section called namespace which shows all the grouping of same namespace
- It gives ability for us to add some abstraction to implement class and inheritance.
- ability to condense name. yes im looking at you c++

std::filesystem::__cxx11...ator<<<char, std::char_traits<char> >(std::operator<<<std::char_traits<char> >(__out: std::cout, __s: "[+] Cound't find output director…"), &var_d0)
can become alot shorter by making ui to not show std::. you get this ability now without losing info.
Is your feature request related to a problem?
Whenever I reverse program language that has OOP concept (C++, Obj-C, Swift, etc), only way to find function related to that class is by searching the class in function search like Classname:: which kills a lot of workflow. Another problem is when you are trying to create plugin or workflow that has to parse vtable and things like that.
TLDR
- workflow on function search
- ability to script instead of doing something like
a. search for function related to class
b. string parse the function nameClassname::some_funcbecomesClassnameandsome_func
c. do something with it.
I feel like I a lot of that pattern during work.
Are any alternative solutions acceptable?
Please provide a clear and concise description of any alternative solutions or features you've considered.
I don't think this is necessary needed. its more of pattern I see often. You can just create a parser and some kind of UI that can do this seperatly but I feel like this should be a feature in binja since OOP is everywhere :(.
Guida per i contributori
Nessuna guida per i contributori indicizzata per questo repository
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Direzione di ricerca
Start by reviewing the public API around the proposed find_function_by_name entry point and how function names are currently represented and searched. Define how namespace-qualified names such as A::B::Func should be parsed, queried, and displayed, then validate the behavior for the C++, Objective-C, and Swift use cases described in the issue.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Valutazione
- Stack tecnologico
- cpp
- Ambito
- api, reverse-engineering
- Tipo di issue
- Funzionalità
- Difficoltà
- 5/5
- Tempo stimato
- Più di una settimana
- Stato di attività
- Ferma
- Chiarezza
- Da chiarire
- Idoneità per principianti
- 25/100