summaryrefslogtreecommitdiffstats
path: root/src
AgeCommit message (Collapse)AuthorFilesLines
2022-04-08normal: Skip fetching FirmwarePreflightInfo for non-baseband devicesGravatar Nikias Bassen1-6/+17
This will prevent the otherwise confusing (but harmless) error messages ERROR: Unable to get (null)-FirmwarePreflightInfo from lockdownd ERROR: Unable to get FirmwarePreflightInfo during restore.
2022-04-07tss: Fix img4 tag for TSS requestGravatar Nikias Bassen1-1/+1
2022-04-07tss/restore: Improve code readability with plist helpers and removal of ↵Gravatar Nikias Bassen4-810/+243
unneeded comments
2022-04-06Add support for Timer,* components and TSS found in iPad Air 5th gen firmwareGravatar Nikias Bassen3-0/+353
2022-04-05ipsw: Use libplist's new plist_from_json APIGravatar Nikias Bassen6-639/+3
2022-03-07restore: Use ECID instead of serial number in restore_is_current_device() to ↵Gravatar Nikias Bassen1-14/+16
match device Some devices seem to not provide serial number information in recovery or restore mode so we use ECID instead to make sure we deal with the same device.
2021-11-27Use macros for the different restore variant stringsGravatar Nikias Bassen3-6/+10
2021-11-26Cache build manifest in client structGravatar Nikias Bassen3-31/+20
2021-11-24Update TSS Client versionGravatar Daniel VanBritsom1-1/+7
Updates the "TSS_CLIENT_VERSION_STRING" to match that of iTunes 12.12.0.6 on Windows and Finder on the latest macOS.
2021-11-24restore: Use new reverse proxy implementation from latest libimobiledeviceGravatar Nikias Bassen1-0/+52
with fallback to the legacy code with a compile time warning. The legacy code will be removed in the future once a newer libimobiledevice has been officially released.
2021-11-19Fix compilation on WindowsGravatar Nikias Bassen3-5/+24
2021-11-17restore: Add missing newlines to info messagesGravatar Hector Martin1-2/+2
Signed-off-by: Hector Martin <marcan@marcan.st>
2021-11-17restore: Support sending BootabilityBundle (Monterey)Gravatar Hector Martin1-0/+155
This is used on macOS 12+ (Monterey and later) to allow older OSes to perform the bless2/bootability process for newer OSes, by putting a shared library in the Preboot partition that contains the specific logic required to make a given macOS install bootable. Closes: #441 Signed-off-by: Hector Martin <marcan@marcan.st>
2021-11-17ipsw: Support extracting symlinks as their target name (Monterey)Gravatar Hector Martin1-17/+27
This already works for zip files, but we need to do a readlink dance for unpacked archives. Signed-off-by: Hector Martin <marcan@marcan.st>
2021-11-17ipsw: Add a function to list the archive contents (Monterey)Gravatar Hector Martin2-0/+124
This is required to enumerate the BootabilityBundle contents. Signed-off-by: Hector Martin <marcan@marcan.st>
2021-11-17idevicerestore: Identify build identity by Variant (Monterey)Gravatar Hector Martin3-91/+20
Monterey got rid of VariantSupportsGlobalSigning. Identify builds based on the Variant field (which seems to always have consistent values) instead of using RestoreBehavior and VariantSupportsGlobalSigning. Signed-off-by: Hector Martin <marcan@marcan.st>
2021-10-26Add command line option to continue despite certain errors (e.g. baseband ↵Gravatar Nikias Bassen3-0/+14
update failure)
2021-10-25ipsw: Migrate to ipsw.me v4 APIGravatar Nikias Bassen1-6/+13
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