Skip to content

Commit

Permalink
recovery: set bRequest to 1 when sending bootx command
Browse files Browse the repository at this point in the history
In macOS 13 beta 8 or newer release, bootx seems to fail if bRequest
is 0 in the control transfer setup. Then, the device fails to enter
restore mode. Seems like something has changed in iBEC since beta 8 and
Apple Configurator 2 has set it to 1, so do the same thing.

While this could be applied for all *OS variants, it's limited to macOS
for now just to be safe.

Signed-off-by: Munehisa Kamata <[email protected]>
  • Loading branch information
kamatam9 authored and nikias committed Oct 5, 2022
1 parent a4f5a0c commit 02eb941
Showing 1 changed file with 1 addition and 1 deletion.
2 changes: 1 addition & 1 deletion src/recovery.c
Original file line number Diff line number Diff line change
Expand Up @@ -498,7 +498,7 @@ int recovery_send_kernelcache(struct idevicerestore_client_t* client, plist_t bu
recovery_error = irecv_send_command(client->recovery->client, setba);
}

recovery_error = irecv_send_command(client->recovery->client, "bootx");
recovery_error = irecv_send_command_breq(client->recovery->client, "bootx", client->macos_variant ? 1 : 0);
if (recovery_error != IRECV_E_SUCCESS) {
error("ERROR: Unable to execute %s\n", component);
return -1;
Expand Down

0 comments on commit 02eb941

Please sign in to comment.