summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGravatar Clément Decoodt2023-07-25 15:12:32 +0200
committerGravatar Clément Decoodt2023-07-25 15:12:32 +0200
commit73438a6ff3fe5758e927c05d389d0e9587dcbb50 (patch)
tree927e5aef4b45f59e9c599dcbddff08a5418810e9
parent609f7f058487596597e8e742088119fdd46729df (diff)
downloadidevicerestore-73438a6ff3fe5758e927c05d389d0e9587dcbb50.tar.gz
idevicerestore-73438a6ff3fe5758e927c05d389d0e9587dcbb50.tar.bz2
Add support for incoherent iBoot parameters
Some firmwares to load during iBoot stage 1 can have both: - isLoadedByiBoot = false - isLoadedByiBootStage1 = true This allows to load it at stage 1
-rw-r--r--src/dfu.c12
1 files changed, 7 insertions, 5 deletions
diff --git a/src/dfu.c b/src/dfu.c
index cb4d2b3..0c3c480 100644
--- a/src/dfu.c
+++ b/src/dfu.c
@@ -349,11 +349,13 @@ int dfu_send_iboot_stage1_components(struct idevicerestore_client_t* client, pli
uint8_t b = 0;
plist_get_bool_val(iboot_node, &b);
if (b) {
- debug("DEBUG: %s is loaded by iBoot Stage 1.\n", key);
- if (dfu_send_component_and_command(client, build_identity, key, "firmware") < 0) {
- error("ERROR: Unable to send component '%s' to device.\n", key);
- err++;
- }
+ debug("DEBUG: %s is loaded by iBoot Stage 1 and iBoot.\n", key);
+ } else {
+ debug("DEBUG: %s is loaded by iBoot Stage 1 but not iBoot...\n", key);
+ }
+ if (dfu_send_component_and_command(client, build_identity, key, "firmware") < 0) {
+ error("ERROR: Unable to send component '%s' to device.\n", key);
+ err++;
}
}
free(key);