974 Commits

Author SHA1 Message Date
Visual Ehrmanntraut 405fcd1794 asr: Increase timeouts for slow devices
e.g. emulated ones via ChefKiss Inferno
2026-02-16 17:21:58 +02:00
Sami Kortelainen 6163635361 logger: fix crash and undefined behavior in logger_dump_hex with zero-length buffers 2026-02-14 19:17:26 +02:00
Nikias Bassen 74e3bd9286 endianness.h: Default to little endian 2025-11-24 01:29:18 +01:00
Nikias Bassen a499b625f9 configure: Bump libimobiledevice and libirecovery version requirements 2025-11-02 02:16:13 +01:00
Nikias Bassen f4d0f7e831 log: Add missing include 2025-10-02 20:56:49 +02:00
Nikias Bassen 460bf2e85b Fix baseband processing with Mav25 (and possibly others too) 2025-10-02 20:56:18 +02:00
Nikias Bassen fb46a9db2d Do not try to print SEP nonce if none was retrieved 2025-10-02 20:54:55 +02:00
Nikias Bassen d88d440f47 mbn: Add missing line break to debug log message 2025-10-01 15:54:03 +02:00
Nikias Bassen 551dba57e3 Fix Mav baseband stitching 2025-09-29 15:46:49 +02:00
Visual Ehrmanntraut 4cf940b968 Add support for Mav25 baseband firmware (iPhone 17 family)
Co-authored-by: Nikias Bassen <nikias@gmx.li>
2025-09-26 18:42:11 +02:00
Nikias Bassen 1aea4df8c8 restore: Suppress progress bars for smaller PersonalizedBootObjectV3 images 2025-09-26 00:13:39 +02:00
Nikias Bassen 47bf8b5f4c restore: Handle new Centauri and Jasmine (Savage) updaters
Also Vinyl shows up with some devices, so we handle this too.
2025-09-26 00:08:09 +02:00
Nikias Bassen 105ac0c399 restore: Dump TSS requests and responses in debug log level 2025-09-26 00:05:12 +02:00
Nikias Bassen fcbf936ca9 restore: Silence messages around AEA first chunk / URLAsset handling
Newer iOS version would cause an Error message despite being able to
continue, so we just ignore it.
2025-09-25 23:53:44 +02:00
Nikias Bassen eda43ac44e Fix progress bar for DFU/Recovery image upload 2025-09-23 00:07:28 +02:00
H-Sofie a0cec3b34f Fix boot-args string and handling
The logging refactoring introduced a spelling error in the boot-args string.
This commit fixes that, and also changes the boot-args handling code to priotize
Apple Silicon/MacOS recovery path before the generic iOS path.
2025-09-14 23:47:20 +02:00
Nikias Bassen 8d1e798ea5 Add SE,ChipID for M4 2025-09-12 17:18:15 +02:00
Nikias Bassen e41ff993f7 Updated README 2025-09-11 17:35:57 +02:00
Nikias Bassen 34d07e0c51 Fix log output of get_ap_nonce/get_sep_nonce 2025-09-11 05:29:52 +02:00
Nikias Bassen bb701b87a5 Increase timeout for device to enter restore mode 2025-09-11 03:24:03 +02:00
Nikias Bassen ae1539e534 [Windows] Fix log output 2025-09-11 01:56:12 +02:00
Nikias Bassen 6c5e5b6237 img4: Fix wrong entry in matching array for component stitching 2025-09-08 17:55:13 +02:00
Nikias Bassen d7e26cf72b Updated FUNDING 2025-09-08 00:08:46 +02:00
Nikias Bassen ddaf2613af Add FUNDING 2025-09-07 23:53:52 +02:00
Nikias Bassen 5d9bd621eb Print message about USB port for macOS restores in case Port DFU fails
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-06 00:38:21 +02:00
Nikias Bassen 75fb578c16 img4: Use lookup table to retrieve tag name in img4_stitch_component()
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-05 23:27:24 +02:00
Nikias Bassen d2cf14fa31 img4: Fix Ap,RestoreDCP2 -> rdc2 mapping
The component is called `Ap,RestoreDCP2` and not `RestoreDCP2`
2025-09-05 23:18:53 +02:00
Nikias Bassen 2914bf66cf img4: Add RestoreDCP2 -> rdc2 mapping 2025-08-14 20:56:13 +02:00
Nikias Bassen 197c9619b3 restore: Adapt log level of previous restore log and reverse proxy messages
We do not want to write these to terminal by default.
2025-07-15 09:33:32 +02:00
Nikias Bassen 038a493625 Removed unused 'entries' member from struct idevicerestore_client_t 2025-07-01 03:34:01 +02:00
Nikias Bassen e574eaeb9f Silence more compiler warnings 2025-07-01 03:26:42 +02:00
Nikias Bassen 460d8f14a1 Fix a couple of compiler warnings and remove unused variables 2025-07-01 01:06:50 +02:00
Nikias Bassen c752e8780b Update codebase to use (const) void* and size_t where applicable 2025-07-01 00:45:50 +02:00
Nikias Bassen c17f9d6b17 download: Use new CURLOPT_XFERINFOFUNCTION for libcurl >= 7.32 2025-06-27 19:08:39 +02:00
Nikias Bassen f89dea1aa8 restore: Fix curl_easy_setopt compiler warning 2025-06-27 19:07:33 +02:00
Nikias Bassen 7ba50eb7c7 [github-actions] Update build workflow for Windows build to use windows-latest 2025-06-27 18:47:50 +02:00
Nikias Bassen 0aa3cbdc82 log: Make sure to only add compiler attribute for supported compilers 2025-06-27 16:20:32 +02:00
Visual Ehrmanntraut 8d0563380d Improve type safety of new logging system and its handling of varargs
- 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-27 16:18:29 +02:00
Nikias Bassen 8061f08b4e Refactor logging and add logfile support
idevicerestore will now also create a logfile automatically, unless
disabled with --logfile=NONE.
2025-06-23 14:00:10 +02:00
Nikias Bassen a5905b7f90 Fix iPhone 16e restore from normal mode
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-27 01:52:20 +01:00
Nikias Bassen 2ee5021f36 Allow building without support for limera1n
Use --without-limera1n at configure time to disable this feature.
2025-03-20 15:10:16 +01:00
Cameron Cross b05d50cf41 [docker] Update docker image base to ubuntu 24.04 2025-02-28 13:42:42 +01:00
Cameron Cross 437e513485 [docker] Add CI to build and archive docker image 2025-02-28 13:40:05 +01:00
Cameron Cross 866b6b773c Add docker scripts to simplify setting up idevicerestore 2025-02-28 13:39:34 +01:00
Nikias Bassen bb5591d690 configure: Fix Linux build with LTO 2024-12-03 01:34:41 +01:00
Nikias Bassen 914fbb35f9 Fix build 2024-12-02 06:57:58 +01:00
Nikias Bassen 5d92c7a587 [github-actions] Bump dawidd6/action-download-artifact from 3 to 6 2024-12-02 06:52:12 +01:00
Nikias Bassen 61a76ce6fc [github-actions] Update curl workflow to build 8.10.1 for UCRT64 2024-11-03 22:09:54 +01:00
Nikias Bassen 559adb735d Updated README 2024-10-22 19:33:22 +02:00
Nikias Bassen 151c680feb Fix iPhone 16 restore from normal mode and add support for RecoveryOS 2024-10-15 22:09:43 +02:00