X-Git-Url: https://git.saurik.com/apple/xnu.git/blobdiff_plain/a991bd8d3e7fe02dbca0644054bab73c5b75324a..HEAD:/libkdd/kcdtypes.c diff --git a/libkdd/kcdtypes.c b/libkdd/kcdtypes.c index cca45ba6c..11d38b068 100644 --- a/libkdd/kcdtypes.c +++ b/libkdd/kcdtypes.c @@ -157,9 +157,14 @@ kcdata_get_typedescription(unsigned type_id, uint8_t * buffer, uint32_t buffer_s case STACKSHOT_KCTYPE_SHAREDCACHE_LOADINFO: { i = 0; + /* + * for backwards compatibility, we keep the old field names, but the + * new data is being put in dyld_shared_cache_loadinfo + */ _SUBTYPE(KC_ST_UINT64, struct dyld_uuid_info_64_v2, imageLoadAddress); _SUBTYPE_ARRAY(KC_ST_UINT8, struct dyld_uuid_info_64_v2, imageUUID, 16); _SUBTYPE(KC_ST_UINT64, struct dyld_uuid_info_64_v2, imageSlidBaseAddress); + _SUBTYPE(KC_ST_UINT64, struct dyld_shared_cache_loadinfo, sharedCacheSlidFirstMapping); setup_type_definition(retval, type_id, i, "shared_cache_dyld_load_info"); break; } @@ -546,10 +551,12 @@ kcdata_get_typedescription(unsigned type_id, uint8_t * buffer, uint32_t buffer_s case STACKSHOT_KCTYPE_STACKSHOT_DURATION: { i = 0; - _SUBTYPE(KC_ST_UINT64, struct stackshot_duration, stackshot_duration); - _SUBTYPE(KC_ST_UINT64, struct stackshot_duration, stackshot_duration_outer); + _SUBTYPE(KC_ST_UINT64, struct stackshot_duration_v2, stackshot_duration); + _SUBTYPE(KC_ST_UINT64, struct stackshot_duration_v2, stackshot_duration_outer); + _SUBTYPE(KC_ST_UINT64, struct stackshot_duration_v2, stackshot_duration_prior); subtypes[0].kcs_flags |= KCS_SUBTYPE_FLAGS_MERGE; subtypes[1].kcs_flags |= KCS_SUBTYPE_FLAGS_MERGE; + subtypes[2].kcs_flags |= KCS_SUBTYPE_FLAGS_MERGE; setup_type_definition(retval, type_id, i, "stackshot_duration"); break; }