Skip to content

Commit

Permalink
restore: Add SupportedAsyncDataTypes for both iOS and macOS
Browse files Browse the repository at this point in the history
  • Loading branch information
fbrandstetter authored and nikias committed Sep 18, 2024
1 parent dab6a34 commit 17c65b2
Showing 1 changed file with 9 additions and 7 deletions.
16 changes: 9 additions & 7 deletions src/restore.c
Original file line number Diff line number Diff line change
Expand Up @@ -5109,13 +5109,6 @@ int restore_device(struct idevicerestore_client_t* client, plist_t build_identit
plist_dict_set_item(opts, "HostHasFixFor99053849", plist_new_bool(1));
plist_dict_set_item(opts, "SystemImageFormat", plist_new_string("AEAWrappedDiskImage"));
plist_dict_set_item(opts, "WaitForDeviceConnectionToFinishStateMachine", plist_new_bool(0));
plist_t async_data_types = plist_new_dict();
plist_dict_set_item(async_data_types, "BasebandData", plist_new_bool(0));
plist_dict_set_item(async_data_types, "RecoveryOSASRImage", plist_new_bool(0));
plist_dict_set_item(async_data_types, "StreamedImageDecryptionKey", plist_new_bool(0));
plist_dict_set_item(async_data_types, "SystemImageData", plist_new_bool(0));
plist_dict_set_item(async_data_types, "URLAsset", plist_new_bool(1));
plist_dict_set_item(opts, "SupportedAsyncDataTypes", async_data_types);

plist_t sep = plist_access_path(build_identity, 3, "Manifest", "SEP", "Info");
if (sep) {
Expand All @@ -5135,6 +5128,15 @@ int restore_device(struct idevicerestore_client_t* client, plist_t build_identit
plist_dict_set_item(opts, "PersonalizedDuringPreflight", plist_new_bool(1));
}

// Added for iOS 18.0 and macOS 15.0
plist_t async_data_types = plist_new_dict();
plist_dict_set_item(async_data_types, "BasebandData", plist_new_bool(0));
plist_dict_set_item(async_data_types, "RecoveryOSASRImage", plist_new_bool(0));
plist_dict_set_item(async_data_types, "StreamedImageDecryptionKey", plist_new_bool(0));
plist_dict_set_item(async_data_types, "SystemImageData", plist_new_bool(0));
plist_dict_set_item(async_data_types, "URLAsset", plist_new_bool(1));
plist_dict_set_item(opts, "SupportedAsyncDataTypes", async_data_types);

plist_dict_set_item(opts, "RootToInstall", plist_new_bool(0));
char* guid = generate_guid();
if (guid) {
Expand Down

0 comments on commit 17c65b2

Please sign in to comment.