Header dump not working for iOS 26
What happened?
I tried the following with dyld from beta 1:
ipsw class-dump dyld_shared_cache_arm64e ARKitCore --headers -o out
It fails with the following output:
• Dumping ObjC headers dylib=ARKitCore
panic: runtime error: index out of range [3] with length 3
goroutine 1 [running]:
github.com/blacktop/go-macho/types/objc.CutType({0x1400f0df06e?, 0x3})
github.com/blacktop/go-macho/types/objc/type_encoding.go:611 +0xf68
github.com/blacktop/go-macho/types/objc.decodeStructOrUnion({0x1400f0df001?, 0x72?}, {0x106d2400b, 0x6})
github.com/blacktop/go-macho/types/objc/type_encoding.go:455 +0xb8
github.com/blacktop/go-macho/types/objc.decodeStructure(...)
github.com/blacktop/go-macho/types/objc/type_encoding.go:392
github.com/blacktop/go-macho/types/objc.decodeType({0x1400f0df000, 0x72})
github.com/blacktop/go-macho/types/objc/type_encoding.go:357 +0x704
github.com/blacktop/go-macho/types/objc.getArguments({0x14000219c80?, 0x4?})
github.com/blacktop/go-macho/types/objc/type_encoding.go:712 +0x98
github.com/blacktop/go-macho/types/objc.(*Method).ArgumentType(0x14000219c80?, 0x0)
github.com/blacktop/go-macho/types/objc/objc.go:356 +0x2c
github.com/blacktop/ipsw/internal/commands/macho.(*ObjC).processForwardDeclarations(0x140004e1b00, 0x14000778640)
github.com/blacktop/ipsw/internal/commands/macho/objc.go:1005 +0x1590
github.com/blacktop/ipsw/internal/commands/macho.(*ObjC).Headers.func1(0x14000778640)
github.com/blacktop/ipsw/internal/commands/macho/objc.go:495 +0x15c
github.com/blacktop/ipsw/internal/commands/macho.(*ObjC).Headers(0x140004e1b00)
github.com/blacktop/ipsw/internal/commands/macho/objc.go:666 +0x70
github.com/blacktop/ipsw/cmd/ipsw/cmd.init.func28(0x140008d5b00?, {0x140007cca50, 0x2, 0x106d1f826?})
github.com/blacktop/ipsw/cmd/ipsw/cmd/class_dump.go:300 +0xbcc
github.com/spf13/cobra.(*Command).execute(0x108ef6820, {0x140007cca00, 0x5, 0x5})
github.com/spf13/[email protected]/command.go:1015 +0x844
github.com/spf13/cobra.(*Command).ExecuteC(0x108ef6ae0)
github.com/spf13/[email protected]/command.go:1148 +0x384
github.com/spf13/cobra.(*Command).Execute(...)
github.com/spf13/[email protected]/command.go:1071
github.com/blacktop/ipsw/cmd/ipsw/cmd.Execute()
github.com/blacktop/ipsw/cmd/ipsw/cmd/root.go:68 +0x24
main.main()
github.com/blacktop/ipsw/cmd/ipsw/main.go:27 +0x1c
Many other frameworks can be extracted, though.
How can we reproduce this?
ipsw class-dump dyld_shared_cache_arm64e ARKitCore --headers -o out
ipsw version
Version: 3.1.611, BuildCommit: 5d9edf2866baac4bab1ccdbc0324ffc243dc9c59
Search
- [x] I did search for other open and closed issues before opening this
Code of Conduct
- [x] I agree to follow this project's Code of Conduct
Additional context
No response
thanks for letting me know! looking into it last night I was able to fix it to get it to run, but there are some weird/wrong results being generated. I might push out a quick fix initially to get you past the crash if you wouldn't mind also going through the results and letting me know any other mistakes you spot and we can try and get it back to 💯
Sounds good, thanks!
you should now be able to: go run ./cmd/ipsw/main.go class-dump dyld_shared_cache_arm64e ARKitCore --headers -o out
Sorry, I totally forgot to answer... It works not, thanks!