Replies: 2 comments
-
it is all pure Go written by myself. the older class-dump was also written by scratch but in objc I think, but the metadata is limited in what Apple actually includes, so for example the only info that apple encodes for the return value IS literally |
Beta Was this translation helpful? Give feedback.
-
It looks like parameter/argument types are also just I'll try to get in touch with the person who generated the headers I have to find out if they manually modified them, or if Thanks for all the info, and for |
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
-
Is there any way for
ipsw class-dump
to generate headers that have more-precise argument & return types?Does your own code extract & decompile headers from the DSC, or does
ipsw
use libraries or tools? (I assume the latter, because "why reinvent the wheel?"). If the latter, what libraries and/or tools doesipsw
use so I can look into configuring them?The main issues I've seen so far are:
id
types with more specific types.id
?BOOL
would be nicer than_Bool
since the former is supposedly from Objective-C, while the latter is from C99 (maybe there's a reason to prefer_Bool
in some or all circumstances, but I don't know, as I', programming in Swift, not in Objetive-C, C, or C++)e.g.:
Outputs
CKSoftwareMap.h
with:+ (id)sharedSoftwareMap;
While a file generated with the obsolete
class-dump
tool on macOS 10.14.4 (I think) has the following (the file might have been manually modified, though, since I only have it from a repo, I don't exactly know if it was ever edited before being committed by someone else years ago):+ (instancetype)sharedSoftwareMap;
Thanks.
Beta Was this translation helpful? Give feedback.
All reactions