summaryrefslogtreecommitdiffstats
path: root/src/idevicerestore.c
AgeCommit message (Collapse)AuthorFilesLines
2016-05-26Prevent possible crash if device mode can't be detectedGravatar Nikias Bassen1-8/+47
2015-10-09Select build identity based on hardware model instead of first or last ↵Gravatar Nikias Bassen1-9/+61
identity in manifest While this might have worked in the past it didn't work anymore with the iPhone 6S (plus) since it comes with two different CPUs (Samsung & TSMC A9). Therefore the BuildManifest.plist has multiple build identities and for a successful restore the correct build identity has to be selected for the actual hardware model of the corresponding device.
2015-10-09Use hardware model instead of product type to identify device correctlyGravatar Nikias Bassen1-12/+12
2015-10-06Show project URL in usage outputGravatar Martin Szulecki1-1/+6
2015-09-24Replace () with (void) for proper function prototypesGravatar Martin Szulecki1-1/+1
2015-05-05Fix some warningsGravatar BALATON Zoltan1-2/+0
2014-10-21Remove destination before moving a file to it as it can fail on some systems ↵Gravatar BALATON Zoltan1-0/+1
otherwise.
2014-05-16restore: Prevent disturbing error message due to missing SEP related componentsGravatar Martin Szulecki1-2/+1
2014-05-16Add build_identity_has_component() helperGravatar Martin Szulecki1-0/+14
2014-05-16tss: Free sep_nonce after use to prevent leakGravatar Martin Szulecki1-0/+1
2014-03-29Add newline at end of some info and error messages where it's missingGravatar Martin Szulecki1-2/+2
2014-03-22Use "plist_dict_set_item" instead of deprecated "plist_dict_insert_item"Gravatar Martin Szulecki1-38/+38
2014-03-21move curl_global_init/_cleanup to a global contextGravatar Nikias Bassen1-0/+6
2014-01-15put device in recovery mode _after_ extracting the root filesystemGravatar Nikias Bassen1-12/+12
Since we can grab tss records in normal mode and these depend on nonce values that are valid only for the first reboot, we should not extract the filesystem after putting the device into recovery mode. If the filesystem extraction takes longer (e.g. on a network filesystem) the recovery mode device might reboot while the file system is still extracting. In that case the TSS record that has been grabbed in normal mode would be invalid.
2013-12-02respect --cache-path when using --latestGravatar Nikias Bassen1-1/+1
2013-12-02idevicerestore: Make personalization work in cases where no TSS is providedGravatar Martin Szulecki1-25/+23
This fixes sending components to old devices like the iPhone1,1.
2013-12-01main: silenced compiler warningsGravatar Nikias Bassen1-2/+3
2013-12-01remove version.xml if parsing failsGravatar Nikias Bassen1-0/+1
2013-11-27Refactor TSS parameter handling and parse RestoreRequestRules properlyGravatar Nikias Bassen1-6/+8
2013-11-20get baseband ticket in normal mode and pass preflight info to StartRestore ↵Gravatar Nikias Bassen1-0/+32
request
2013-11-20Don't request ApNonce again for image4 aware devices after loading iBECGravatar Nikias Bassen1-1/+1
2013-11-20dfu: Implement dfu_get_ecid() to fix connectivity issues from DFU modeGravatar Martin Szulecki1-0/+6
2013-11-20idevicerestore: Fix memory leak in build_manifest_check_compatibility()Gravatar Martin Szulecki1-0/+1
2013-11-20idevicerestore: Free build identity and manifest plist upon exitingGravatar Martin Szulecki1-0/+6
2013-11-20personalize_component: always return a component, also if not stitchedGravatar Nikias Bassen1-0/+5
2013-11-20idevicerestore: Use better error message if adding tags to TSS request failsGravatar Martin Szulecki1-3/+3
2013-11-20idevicerestore: Use new helper to add common tags to TSS requestGravatar Martin Szulecki1-0/+8
2013-11-20refactor component personalization and add support for Image4 stitchingGravatar Nikias Bassen1-38/+41
2013-11-20get_tss_response: set required parameters for Image4 TSS requestGravatar Nikias Bassen1-7/+28
2013-11-20add sep-firmware -> RestoreSEP matching to get_component_name()Gravatar Nikias Bassen1-0/+2
2013-11-19tss: Make ApNonce parameter optional to fix restore on iPhone 3GS and olderGravatar Martin Szulecki1-1/+3
2013-11-19silence some clang compiler warningsGravatar Nikias Bassen1-1/+1
2013-11-19tss: Refactor TSS handlers for Image4 support and flexibilityGravatar Martin Szulecki1-7/+36
2013-11-19img3: hide low level img3 code and provide simpler img3_stitch_component() ↵Gravatar Nikias Bassen1-26/+6
function
2013-11-19add get_sep_nonce helper functionGravatar Nikias Bassen1-0/+43
2013-11-19Add helper function to check if device supports image4 formatGravatar Nikias Bassen1-0/+24
2013-11-19removed unused get_cpid/get_bdid and adapted for latest libirecovery changesGravatar Nikias Bassen1-50/+0
2013-11-18Split nonce retrieval into ApNonce and SepNonce for DFU and Recovery modesGravatar Martin Szulecki1-2/+2
2013-11-18idevicerestore: Remove obsolete arguments from get_shsh_blobs()Gravatar Martin Szulecki1-4/+4
2013-11-18normal: Split normal_get_nonce() into ApNonce and SEPNonce gettersGravatar Martin Szulecki1-5/+5
2013-10-24Added warning about missing ‘SupportedProductTypes’ key in iPhoneOS 2.x ↵Gravatar Aaron Burghardt1-0/+2
IPSWs. Signed-off-by: Martin Szulecki <m.szulecki@libimobiledevice.org>
2013-10-24Prefer the WTF file in the restore IPSW, fallback to downloading the WTF IPSW.Gravatar Aaron Burghardt1-36/+44
Signed-off-by: Martin Szulecki <m.szulecki@libimobiledevice.org>
2013-10-24Added test for limera1n compatibility before attempting to inject it.Gravatar Aaron Burghardt1-1/+1
Signed-off-by: Martin Szulecki <m.szulecki@libimobiledevice.org>
2013-10-24Return ‘DeviceTree’ instead of ‘RestoreDeviceTree’ from ↵Gravatar Aaron Burghardt1-1/+1
get_component_name(). Returning ‘RestoreDeviceTree’ is inconsistent with other component names, and the caller apparently handles the need for it. Also, the API doc for plist_dictionary_insert_item states that it asserts if the key to be inserted already exists. if plist_dictionary_insert_item actually does assert as described, the caller of get_component_name triggers that assertion if ‘RestoreDeviceTree’ is returned. Signed-off-by: Martin Szulecki <m.szulecki@libimobiledevice.org>
2013-10-24Fall back to ‘RestoreKernelCaches’ if ‘KernelCachesByTarget’ not in ↵Gravatar Aaron Burghardt1-12/+16
Restore.plist. Signed-off-by: Martin Szulecki <m.szulecki@libimobiledevice.org>
2013-10-03AppleTV: set auto-boot to true again after restoreGravatar Nikias Bassen1-0/+14
Apparently AppleTV units don't boot up in normal mode after restore but switch into recovery mode so we set auto-boot to true to make them boot up in normal mode.
2013-10-02ipsw: change buffers to use type unsigned char*Gravatar Nikias Bassen1-4/+4
2013-10-02img3: make buffers and sizes unsignedGravatar Nikias Bassen1-4/+4
2013-10-02use dynamically allocated buffer when reading cached SHSH filesGravatar Nikias Bassen1-3/+24
2013-10-02silence implicit declaration compiler warningsGravatar Nikias Bassen1-0/+1