summaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)AuthorFilesLines
2024-06-22restore: Remove `build_identity` from the parameters of the functionsGravatar Nikias Bassen2-100/+178
2024-06-19Updated READMEGravatar Nikias Bassen1-45/+178
2024-06-17Require libtatsu-1.0.3Gravatar Nikias Bassen1-1/+1
2024-06-16Remove OpenSSL dependency in favor of libimobiledevice-glue's hash functionsGravatar Nikias Bassen11-844/+13
This also removes the sha1/sha384 code from this repository since we are using the ones from libimobiledevice-glue now.
2024-06-12Require libtatsu 1.0.2Gravatar Nikias Bassen1-1/+1
2024-06-12Add missing linebreak to log messageGravatar Nikias Bassen1-1/+1
2024-06-05Small change to align with updated libtatsuGravatar Nikias Bassen2-2/+2
2024-05-23[github-actions] Update build workflow to use new libtatsuGravatar Nikias Bassen1-0/+21
2024-05-23Link against the new libtatsu and remove tss codeGravatar Nikias Bassen9-1876/+14
2024-05-18Add missing cast to silence compiler warningGravatar Nikias Bassen1-1/+1
2024-05-18automake: Prevent `dist` or `distcheck` when uncommitted changes are presentGravatar Nikias Bassen1-0/+1
2024-05-14Require libplist 2.6.0Gravatar Nikias Bassen6-72/+57
2024-05-05Updated to use libplist 2.5.0 APIGravatar Nikias Bassen9-432/+285
2024-05-02[github-actions] Fix build for macOSGravatar Nikias Bassen1-1/+1
2024-05-02[github-actions] Only allow curl workflow to be triggered manuallyGravatar Nikias Bassen1-1/+1
2024-05-02[github-actions] Updated actions in build workflowGravatar Nikias Bassen1-21/+21
2024-04-04dfu: A little code optimizationGravatar Nikias Bassen1-15/+5
2024-04-04Remove annoying linebreakGravatar Nikias Bassen1-2/+1
2024-04-03Fix restore mode component personalisationGravatar Visual Ehrmanntraut1-23/+31
2024-03-23Add support for Port DFU device restoreGravatar Nikias Bassen9-2/+511
2024-03-23tss: Update libauthinstall verison stringGravatar Nikias Bassen1-1/+1
2024-03-23Fix some variable types for more consistencyGravatar Nikias Bassen8-24/+24
2024-03-08Make sure to extract the build manifest before doing restore mode checksGravatar Nikias Bassen1-14/+15
Otherwise we could set tss_enabled to 0 but the extraction would re-enable it.
2024-01-15update buildGravatar Nikias Bassen1-1/+10
2024-01-15libcurl buildGravatar Nikias Bassen1-0/+58
2024-01-13[github-actions] Windows: build with static libcurlGravatar Nikias Bassen1-1/+1
2023-11-27restore: Only print progress bar for images larger than 16 MBGravatar Nikias Bassen1-1/+1
2023-11-21Update libzip API usage to use non-deprecated functionsGravatar Nikias Bassen1-11/+12
2023-11-15Change path_get_basename arg to const tooGravatar Nikias Bassen2-2/+2
2023-11-15Change path_get_basename()'s return type to const char*Gravatar tihmstar3-6/+5
This makes it clear that the return value is immutable and moreover suggests that the return vale is not allocated and thus should be treated carefully.
2023-11-15restore: Fix UaFGravatar tihmstar1-2/+2
`fsname_base` points inside the dynamically allocated `path` which is freed before `fsname_base` is used, creating a use-after-free condition. This commits makes sure to free `path` only after it is no longer needed.
2023-11-15asr: Fix sending payload without checksumGravatar tihmstar1-4/+6
2023-11-09Fix update restore by making sure the premanifest is properly generatedGravatar Nikias Bassen3-14/+32
2023-11-09Print progress for large components (e.g. Cryptex)Gravatar Nikias Bassen5-13/+41
2023-11-08.gitignore: Add src/idevicerestore.exeGravatar Nikias Bassen1-0/+1
2023-11-07Print device Product and Build Version and IPSW Product and Build VersionGravatar Nikias Bassen2-18/+26
It wasn't entirely clear what "Product Version" and "Product Build" would be so prefixing it with "IPSW" makes it clear it's the version being restored.
2023-11-02Extract OS component when using older ipsw archivesGravatar Nikias Bassen7-11/+143
Older ipsw archives have the root filesystem stored in compressed format rather than just "stored". The "Verifying Filesystem" step would then fail as compressed files are not seekable in ZIP files. This commit introduces a detection for this and has the filesystem extracted should it be required. If not using a cache path, the temp file used for extraction will be deleted after the procedure is completed.
2023-10-09tss: Add USBPortController1,* entries to parametersGravatar Nikias Bassen1-0/+4
2023-10-07Improve debug output by suppressing libimobiledevice and libirecovery debug ↵Gravatar Nikias Bassen2-3/+7
output by default To get libimobiledevice and libirecovery output, add -d or --debug twice.
2023-10-06restore: Also print checkpoint warning messagesGravatar Nikias Bassen1-0/+4
2023-10-06restore: Add Ace3 as known updater name to suppress error messageGravatar Nikias Bassen1-0/+6
2023-10-06restore: Skip adding FirmwareData to FirmwareResponseData for RoseGravatar Nikias Bassen1-0/+6
2023-10-04restore: Improve checkpoint log output again, make sure to always check for ↵Gravatar Nikias Bassen1-5/+8
errors Turns out even with a CHECKPOINT_RESULT of 0 we can still have a CHECKPOINT_ERROR string.
2023-10-04restore: Refine checkpoint log outputGravatar Nikias Bassen1-6/+15
2023-10-04restore/tss: Prefer DeviceGeneratedRequest for Rose TSS request, and add ↵Gravatar Nikias Bassen2-4/+11
missing tag
2023-10-02restore: Add new SE,ChipID 0x36 to list of known valuesGravatar Nikias Bassen1-1/+1
2023-10-02restore: Attributed status code 50 with SEP load failureGravatar Nikias Bassen1-0/+1
2023-10-02restore: Handle SepStage1 (SEPPatchImageData) in NORImageDataGravatar Nikias Bassen1-0/+25
2023-09-29tss: Add Ap,SikaFuse to TSS request as seen for iPhone 14/15 devicesGravatar Nikias Bassen1-0/+8
This is currently implemented as a workaround as the evaluation of when this value should be set is unclear. Right now we set it when UID_MODE is set too.
2023-09-14Refactor ipsw code to transparently stream images directly from ZIP or ↵Gravatar Nikias Bassen9-355/+272
extracted ipsw This allows flashing directly from IPSW archive without having to extract it first, and ultimately removes the "Extracting filesystem from IPSW" part. Restoring from extracted IPSW is also supported, just pass the path to the directory that has all the files from a given IPSW.