summaryrefslogtreecommitdiffstats
path: root/src
AgeCommit message (Collapse)AuthorFilesLines
2021-10-11tss: Fix incorrect comments for veridian and tcon ticketsGravatar Nikias Bassen1-2/+2
2021-10-01restore: Fix CheckpointMsg parsing for older firmware versionsGravatar Nikias Bassen1-5/+3
Older firmware versions don't seem to always include CHECKPOINT_COMPLETE so we assume that state is false instead of aborting with an error.
2021-09-27Remove files obsoleted by libimobiledevice-glueGravatar Nikias Bassen4-704/+0
2021-09-27fdr: Fix socket receive timeout handling logicGravatar Hector Martin1-6/+8
This fixes flaky restores / activation not proceeding if you're more than 100ms away from Apple's servers. Signed-off-by: Hector Martin <marcan@marcan.st>
2021-09-27restore: Add support for updating AppleTCONGravatar Hector Martin3-0/+186
Closes: #442 Co-authored-by: Nikias Bassen <nikias@gmx.li> Signed-off-by: Hector Martin <marcan@marcan.st>
2021-09-24img4: Add MtpFirmware component tagGravatar Nikias Bassen1-0/+1
2021-09-24Prevent unnecessary delay on inital device detectionGravatar Nikias Bassen1-5/+7
2021-09-01Add new --ipsw-info command line switch to show information about build ↵Gravatar Nikias Bassen3-2/+244
identities etc.
2021-09-01Remove common code in favor of libimobiledevice-glueGravatar Nikias Bassen6-9/+7
2021-08-17tss: Fix TSS request generation by ignoring components without ↵Gravatar Nikias Bassen1-3/+18
RestoreRequestRules
2021-08-12img4: Check component entries in build identity for IMG4 tags (Img4PayloadType)Gravatar Nikias Bassen3-4/+19
2021-08-11tss: Remove numerous free() calls and instead free at start of plist ↵Gravatar Nikias Bassen1-43/+12
dictionary parsing loop
2021-08-10img4: Add Ap,SystemVolumeCanonicalMetadata and SystemVolume component tagsGravatar Nikias Bassen1-0/+2
2021-08-09restore: Set SupportedDataTypes and SupportedMessageTypes for ALL restore ↵Gravatar Nikias Bassen1-2/+3
variants/platforms
2021-06-29Make device mode specific code more consistentGravatar Nikias Bassen7-85/+102
2021-06-29Remove unused functionsGravatar Nikias Bassen6-126/+74
2021-06-07tss: fix restore rules not applied for recoveryosGravatar Benjamin BOURGEAIS2-4/+3
2021-06-05restore: Error out if no matching build identity can be foundGravatar Nikias Bassen1-0/+4
2021-06-05restore: macOS Update LocalPolicy must use the normal build identityGravatar Benjamin BOURGEAIS1-1/+2
2021-05-28Add SHA384 (and SHA512) implementation for use when compiling without OpenSSLGravatar Nikias Bassen6-3/+427
2021-05-28Update internal SHA1 and SHA1Update function prototypes to match OpenSSL's ↵Gravatar Nikias Bassen2-14/+14
SHA1/SHA1_Update
2021-05-27Use proper exit status values when returning from main()Gravatar Nikias Bassen1-10/+10
2021-05-26normal: Fix incorrect return code in normal_enter_recovery()Gravatar Sami Kortelainen1-1/+1
2021-05-26restore: Silence compiler warningsGravatar Nikias Bassen1-2/+2
2021-05-26Remove libuuid dependencyGravatar Nikias Bassen2-10/+14
2021-05-11restore: Handle new data types requested by the restore processGravatar Benjamin BOURGEAIS1-0/+514
2021-05-08restore: Update the restore start request to match Apple Configurator 2Gravatar Benjamin BOURGEAIS1-54/+174
2021-05-08restore: Send NOR images as a dict for newer versionsGravatar Benjamin BOURGEAIS1-7/+17
2021-05-08recovery: Ignore firmwares already sent on stage 1Gravatar Benjamin BOURGEAIS1-1/+7
2021-05-08recovery: Update restore boot args to match Apple Configurator 2Gravatar Benjamin BOURGEAIS1-0/+2
2021-05-08dfu: Send now-required stage 1 componentsGravatar Benjamin BOURGEAIS1-2/+74
2021-05-08dfu: Add helpers to send components and commandsGravatar Benjamin BOURGEAIS1-0/+75
2021-05-08dfu: Add special handling for sending the local policy componentGravatar Benjamin BOURGEAIS1-18/+30
2021-05-08tss: Add new callsGravatar Benjamin BOURGEAIS5-3/+706
- Local policy (non persistent) - recoveryOS - recoveryOS Local policy (persistent) The local policy TSS request differs slightly between the one for the restore process and the recoveryOS. The one for the restore process is meant to be used only once, and the one for the recovery os is meant to be loaded from disk, and thus has a different request. See the Ap,LocalBoot parameter.
2021-05-08Explicit the component path in the IPSW archive when extracting themGravatar Benjamin BOURGEAIS1-1/+1
2021-05-08Add an embedded empty local policy fileGravatar Benjamin BOURGEAIS2-0/+12
This file will be needed later by the stage 1 boot process.
2021-05-08asr: Improve reliability over USB3 by avoiding multiple sendGravatar Benjamin BOURGEAIS1-57/+13
Align the size of sent packets on the ASR_PAYLOAD_CHUNK_SIZE.
2021-05-08img4: Add new cases for the ASN1 label rewritingGravatar Benjamin BOURGEAIS1-0/+8
2021-03-17restore: Handle BasebandUpdaterOutputDataGravatar Nikias Bassen1-0/+74
This seems to be sent only when the baseband update failed.
2021-03-05Fix entering recovery mode on iOS 14.5+ which now requires a pairingGravatar Nikias Bassen1-2/+12
2020-12-21recovery: Upload RestoreSEP image if present in BuildManifestGravatar Nikias Bassen2-33/+33
This fixes restoring iPhone 12 family devices and possibly others on iOS 14.3
2020-10-27restore: Add SE,ChipID 0xD2 for iPhone 12 SE firmwareGravatar Nikias Bassen1-1/+1
2020-10-27restore: Silence warning about EAN Data progressGravatar Nikias Bassen1-0/+1
2020-10-27restore: Add new baseband firmware file mapping for Mav20 basebands (iPhone 12)Gravatar Nikias Bassen1-0/+2
2020-10-16fix two English typosGravatar Yves-Alexis Perez2-2/+2
2020-10-12restore: Fix NORData request by sending new components (fixes wireless ↵Gravatar Nikias Bassen1-4/+19
charging on newer devices) The NorImageData response didn't include the WCHFirmwareUpdater for newer devices, resulting in wireless charging capability to be broken on iPhone XS, iPhone XR, and newer. Upon further inspection it turned out that the selection for the images to send was only based on `IsFirmwarePayload` property. However, there are additional components with other properties, as the WCHFirmwareUpdater one, that don't have the `IsFirmwarePayload` property but instead `IsSecondaryFirmwarePayload` and `IsLoadedByiBoot` which seem to be the rule for including these images.
2020-09-16restore: Add some more restore progress stepsGravatar Nikias Bassen1-0/+15
2020-07-09Fix 'Unable get path ...' error messages to say 'Unable to get path ...'Gravatar Nikias Bassen2-7/+7
2020-06-24restore: Improve NORData error messageGravatar Nikias Bassen1-1/+1
2020-06-24Print note about usbmuxd when device fails to enter restore modeGravatar Nikias Bassen1-0/+1