rizinorg / rizin

UNIX-like reverse engineering framework and command-line toolset.
https://rizin.re
GNU Lesser General Public License v3.0
2.71k stars 363 forks source link

Improve vtable detection for C++, ObjectiveC, Dlang and Swift binaries #416

Open XVilka opened 3 years ago

XVilka commented 3 years ago

What should be done (in C, as part of Rizin):

See the relevant code at

Examples of similar features in another programs:

More information about the same for Swift binaries:

More information about the same for Objective C binaries:

More information about the same in FreePascal binaries:

More information about the same in D language binaries:

See also these for extracting C++ classes information from kernelcache:

fangxlmr commented 3 years ago

@Basstorm This issue is asigned to you as RSoC micro-task, so you could work on this from now on. Feel free to ask questions and send Pull Requests.

In case for anyone who is not aware about RSoC.

CC @XVilka

XVilka commented 3 years ago

@Basstorm please note, that this is "meta" issue, so any improvement in vtable detection in one of the aforementioned categories counts.

Basstorm commented 3 years ago

@XVilka @fangxlmr Okay, I'll do my best, thanks.

Basstorm commented 3 years ago

Can I using rz_bin_get_classes function in class.c directly to get the classes and their members, and do the next job like constructor autorecognition? @XVilka

XVilka commented 3 years ago

@Basstorm I think you got your answer on the Mattermost. Let me know if there is something unclear yet.

Basstorm commented 3 years ago

811

819

852

d-lang PR