diff --git a/hack/extras/Dyld.bt b/hack/extras/Dyld.bt index e3fb43edc..6c725128c 100644 --- a/hack/extras/Dyld.bt +++ b/hack/extras/Dyld.bt @@ -166,8 +166,8 @@ typedef struct uint64 cacheAtlasSize; // size of embedded cache atlas uint64 dynamicDataOffset; // VM offset from cache_header* to the location of dyld_cache_dynamic_data_header uint64 dynamicDataMaxSize; // maximum size of space reserved from dynamic dataz - uint32 tProMappingOffset; // file offset to TPRO mappings NEW in iOS 18.0 beta1 (hi mrmacete :P) - uint32 tProMappingCount; // TPRO mappings count NEW in iOS 18.0 beta1 (is 1 for now) + uint32 tProMappingOffset; // file offset to first dyld_cache_tpro_mapping_info + uint32 tProMappingCount; // number of dyld_cache_tpro_mapping_info entries } dyld_cache_header; typedef struct diff --git a/hack/extras/PBL.bt b/hack/extras/PBL.bt index a248e1bd4..86b9bb5de 100644 --- a/hack/extras/PBL.bt +++ b/hack/extras/PBL.bt @@ -55,10 +55,10 @@ typedef struct uint16 hasReadOnlyObjC : 1; // Has __DATA_CONST,__objc_selrefs section uint16 pre2022Binary : 1; uint16 isPremapped : 1; // mapped by exclave core - uint16 isVersion2 : 1; // FIXME: when dyld src is out for iOS 18.0/macOS 15.0 - uint16 unknown1 : 1; // FIXME: when dyld src is out for iOS 18.0/macOS 15.0 - uint16 unknown2 : 1; // FIXME: when dyld src is out for iOS 18.0/macOS 15.0 - uint16 unknown3 : 1; // FIXME: when dyld src is out for iOS 18.0/macOS 15.0 + uint16 hasUUIDLoadCommand : 1; + uint16 hasWeakDefs : 1; + uint16 hasTLVs : 1; + uint16 belowLibSystem : 1; uint16 padding : 2; LoaderRef ref; } PBLLoader; diff --git a/pkg/dyld/file.go b/pkg/dyld/file.go index 7550a01ff..cf8b3d83d 100644 --- a/pkg/dyld/file.go +++ b/pkg/dyld/file.go @@ -665,7 +665,7 @@ func (f *File) parseCache(r io.ReaderAt, uuid mtypes.UUID) error { sr.Seek(int64(f.Headers[uuid].TPROMappingsOffset), io.SeekStart) f.TPROMappings = make([]TPROMapping, f.Headers[uuid].TPROMappingsCount) if err := binary.Read(sr, f.ByteOrder, f.TPROMappings); err != nil { - return fmt.Errorf("failed to read DSC TPRO mappings (new in iOS18.0beta1): %v", err) + return fmt.Errorf("failed to read DSC TPRO mappings (new in iOS18.0): %v", err) } }