summaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)AuthorFilesLines
2025-09-11Fix log output of get_ap_nonce/get_sep_nonceGravatar Nikias Bassen1-8/+4
2025-09-11Increase timeout for device to enter restore modeGravatar Nikias Bassen1-1/+1
2025-09-11[Windows] Fix log outputGravatar Nikias Bassen1-1/+1
2025-09-08img4: Fix wrong entry in matching array for component stitchingGravatar Nikias Bassen1-1/+1
2025-09-08Updated FUNDINGGravatar Nikias Bassen1-0/+1
2025-09-07Add FUNDINGGravatar Nikias Bassen1-0/+2
2025-09-06Print message about USB port for macOS restores in case Port DFU failsGravatar Nikias Bassen1-0/+4
Depending on the model, a specific USB Port has to be used for a restore. When using a different one, Port DFU fails to switch to DFU mode. We use this fact to print a message with an official link that shows the correct USB port to use for the restore.
2025-09-05img4: Use lookup table to retrieve tag name in img4_stitch_component()Gravatar Nikias Bassen1-28/+37
Instead of maintaining another component -> tag mapping, we use the already existing function _img4_get_component_tag() to retrieve the corresponding tag name.
2025-09-05img4: Fix Ap,RestoreDCP2 -> rdc2 mappingGravatar Nikias Bassen1-1/+3
The component is called `Ap,RestoreDCP2` and not `RestoreDCP2`
2025-08-14img4: Add RestoreDCP2 -> rdc2 mappingGravatar Nikias Bassen1-0/+1
2025-07-15restore: Adapt log level of previous restore log and reverse proxy messagesGravatar Nikias Bassen1-3/+3
We do not want to write these to terminal by default.
2025-07-01Removed unused 'entries' member from struct idevicerestore_client_tGravatar Nikias Bassen1-11/+0
2025-07-01Silence more compiler warningsGravatar Nikias Bassen2-2/+2
2025-07-01Fix a couple of compiler warnings and remove unused variablesGravatar Nikias Bassen4-8/+3
2025-07-01Update codebase to use (const) void* and size_t where applicableGravatar Nikias Bassen26-168/+158
2025-06-27download: Use new CURLOPT_XFERINFOFUNCTION for libcurl >= 7.32Gravatar Nikias Bassen1-1/+9
2025-06-27restore: Fix curl_easy_setopt compiler warningGravatar Nikias Bassen1-1/+1
2025-06-27[github-actions] Update build workflow for Windows build to use windows-latestGravatar Nikias Bassen1-3/+6
2025-06-27log: Make sure to only add compiler attribute for supported compilersGravatar Nikias Bassen1-0/+5
2025-06-27Improve type safety of new logging system and its handling of varargsGravatar Visual Ehrmanntraut3-11/+25
- Replaced loglevel arguments and globals using the `int` type with the `loglevel` enum. - Moved logging print func handler function declaration to typedef. - Fixed misuse of `print_func` where a char* was passed in place of `va_list` via a wrapper function `print_funcf`. - Fixed reuse of varargs in `logger` causing a segfault when `stderr_enabled` is true. - Fixed length in `snprintf` call inside `logger_hex_dump` truncating the printed text.
2025-06-23Refactor logging and add logfile supportGravatar Nikias Bassen24-1459/+2014
idevicerestore will now also create a logfile automatically, unless disabled with --logfile=NONE.
2025-03-27Fix iPhone 16e restore from normal modeGravatar Nikias Bassen1-12/+14
Because of the new Apple baseband the initial TSS request won't succeed when restoring from normal mode due to missing data for a @BBTicket. So now if the baseband information is missing, we don't try to add BBTicket data at all, which will make it work for iPhone 16e devices.
2025-03-20Allow building without support for limera1nGravatar Nikias Bassen3-5/+37
Use --without-limera1n at configure time to disable this feature.
2025-02-28[docker] Update docker image base to ubuntu 24.04Gravatar Cameron Cross1-1/+1
2025-02-28[docker] Add CI to build and archive docker imageGravatar Cameron Cross1-0/+13
2025-02-28Add docker scripts to simplify setting up idevicerestoreGravatar Cameron Cross5-0/+126
2024-12-03configure: Fix Linux build with LTOGravatar Nikias Bassen1-0/+1
2024-12-02Fix buildGravatar Nikias Bassen1-1/+0
2024-12-02[github-actions] Bump dawidd6/action-download-artifact from 3 to 6Gravatar Nikias Bassen1-19/+23
2024-11-03[github-actions] Update curl workflow to build 8.10.1 for UCRT64Gravatar Nikias Bassen1-9/+11
2024-10-22Updated READMEGravatar Nikias Bassen1-4/+7
2024-10-15Fix iPhone 16 restore from normal mode and add support for RecoveryOSGravatar Nikias Bassen10-104/+578
2024-10-11configure: Require newer libtatsu and libirecoveryGravatar Nikias Bassen1-2/+2
2024-09-28Be more precise about what is wrong when entering restore mode failsGravatar Nikias Bassen1-1/+5
2024-09-25Release DFU/Recovery client on disconnect and Increase timeout for port DFU ↵Gravatar Nikias Bassen1-1/+3
-> KIS
2024-09-25ace3: Fix Ace3Binary generation for newer devicesGravatar Nikias Bassen1-7/+41
2024-09-21Initial support for iPhone 16 restoreGravatar Nikias Bassen2-0/+18
2024-09-21asr: Fix memory corruption due to double freeGravatar Nikias Bassen1-2/+2
2024-09-21asr: Add support for second Initiate requestGravatar Florian Brandstetter1-16/+43
First observed in iBridgeOS 9.0. The first Initiate ASR packet (checksum_chunks = false) requests 64 bytes of the IPSW at offset 0, after which another Initiate follows requesting a switch to (checksum_chunks = true) and additional OOBData.
2024-09-19Also print libirecovery versionGravatar Nikias Bassen1-2/+2
2024-09-19Replace sprintf with snprintfGravatar Nikias Bassen4-28/+30
2024-09-19restore: Add SupportedAsyncDataTypes for both iOS and macOSGravatar Florian Brandstetter1-7/+9
2024-09-18Print libtatsu version alongside idevicerestore versionGravatar Nikias Bassen1-2/+2
2024-09-18Only print libimobiledevice debug info for debug level > 2Gravatar Nikias Bassen1-1/+3
2024-09-18common: Try to improve terminal output with fflush()Gravatar Nikias Bassen1-0/+3
2024-09-18restore: Fix incorrect fallback caseGravatar tihmstar1-2/+2
When the updated behavior is not triggered, the legacy behavior must be correctly executed. Thus, always correctly fall back to old behavior instead of aborting here. For example message can be NULL when restoring iOS 1.0 (in my fork).
2024-09-18restore: Only send FirmwareData when it has been requestedGravatar Nikias Bassen1-21/+101
2024-09-18restore: Make sure to error out when async data request handler can't be startedGravatar Nikias Bassen1-0/+3
When passing --ignore-errors, it would not fail when the async data request handler thread cannot be started, and might end up waiting forever for something to happen.
2024-09-18restore: Make wait for URLAsset on first chunk optionalGravatar Nikias Bassen1-5/+15
2024-07-09ipsw: Fix concurrent access to ZIP fileGravatar Nikias Bassen2-35/+137
With the new AsyncDataRequestMsg we have the problem that multiple threads would access the .ipsw, however we were only using one struct zip* handle for the entire procedure, resulting in read errors when concurrent access occurs. This commit fixes it by opening the zip file for every access separately.