AgeCommit message (Collapse)AuthorFilesLines
10 daysidevicebackup2: Fix option parsingHEADmasterGravatar Nikias Bassen1-0/+1
10 daysidevice: Restore original behavior for idevice_event_unsubscribe()Gravatar Nikias Bassen1-0/+1
Due to an implementation detail from the past, a call to idevice_event_unsubscribe would not cause the callback function to be called with IDEVICE_DEVICE_REMOVE events, even though originally it was planned to be that way. Due to the internal changes for the newer idevice_events_subscribe/unsubscribe API, that behavior changed and it would call the callback. Now to not break current software implementations depending on the original behavior we modify the old API to behave the same as before the change.
11 daysinstproxy: Use synchronous mode when callbacks are NULL, as documentedGravatar Marc Prud'hommeaux1-6/+6
Synchronous modes for `instproxy_install`, `instproxy_upgrade`, `instproxy_uninstall`, `instproxy_archive`, `instproxy_restore`, and `instproxy_remove_archive` appear to be ignoring the documented behavior that “If NULL is passed, this function will run synchronously”. This commit fixes the advertised behavior.
11 daysAdd new idevice_events_subscribe/unsubscribe API with contextGravatar Nikias Bassen4-16/+89
The older API idevice_event_subscribe/unsubscribe can only be used by a single instance. With the addition of a context, is is now possible to register multiple callback functions in different threads. For backwards compatibility the old API will still be available for a while before being removed in a future release.
2022-05-05idevicebtlogger: Fix typo in man page and code commentGravatar Nikias Bassen2-2/+3
2022-05-05idevicebtlogger: Some whitespace/coding style fixesGravatar Nikias Bassen1-27/+29
2022-05-05idevicebtlogger: remove dependency on libpcapGravatar Matthias Ringwald2-79/+106
2022-05-05idevicebtlogger: add --format option for 'pcap' and 'packetlogger'Gravatar Matthias Ringwald2-14/+106
2022-05-05idevicebtlogger: update for libimobiledevice-glueGravatar Matthias Ringwald1-1/+1
2022-05-05Updated with idevicebtloggerGravatar Geoffrey Kruse1-0/+1
2022-05-05idevicebtlogger: Add basic man pageGravatar Geoffrey Kruse2-0/+48
2022-05-05idevicebtlogger: Minor cleanupGravatar Geoffrey Kruse4-9/+28
2022-05-05idevicebtlogger: Simplify by using bt_packet_logger_client_start_service()Gravatar Geoffrey Kruse1-33/+2
2022-05-05idevicebtlogger: Switch to using DLT_BLUETOOTH_HCI_H4_WITH_PHDR (201) and ↵Gravatar Geoffrey Kruse1-3/+20
capture direction for better decoding in wireshark.
2022-05-05idevicebtlogger: Remove debug printing codeGravatar Geoffrey Kruse1-8/+0
2022-05-05idevicebtlogger: Cleanup warnings, todos and magic numbersGravatar Geoffrey Kruse4-46/+27
2022-05-05Initial commit of working packet logger (idevicebtlogger)Gravatar Geoffrey Kruse6-1/+801
2022-05-02idevice: Fix sign issue in idevice_get_device_list_extendedGravatar Семён Марьясин1-1/+1
In sync with idevice_from_mux_device, line 384. Without this fix, data size 128 (the common value) is treated as -128, resulting in incorrect allocation. Related to #1248 but doesn't fully fix it.
2022-05-02ideviceinfo: Make sure all error messages go to stderrGravatar Nikias Bassen1-2/+2
Thanks to @Takuro-Ito for pointing this out.
2022-05-02lockdownd: Fix memory leaks in error conditionsGravatar Sami Kortelainen1-0/+3
2022-05-01idevicebackup2: Fix command line option parsing not processing the backup ↵Gravatar Nikias Bassen1-2/+0
2022-04-30[clang-tidy] Do not use else after returnGravatar Rosen Penev14-127/+133
Signed-off-by: Rosen Penev <>
2022-04-30tools: Use getopt for option parsing in all toolsGravatar Nikias Bassen20-1081/+1182
2022-04-24idevicedebug: Fix bad comparison between pointer and integerGravatar Nikias Bassen1-8/+8
This was introduced with commit c461e6d76b27b11284dda66316263696d5266764 where I manually merged some changes and for some reason used NULL instead of 0 as a comparison of str*cmp.
2022-04-22[clang-tidy] Fix bugprone string compareGravatar Rosen Penev9-20/+20
Found with bugprone-suspicious-string-compare Signed-off-by: Rosen Penev <>
2022-04-22[clang-tidy] add parentheses to macrosGravatar Rosen Penev5-8/+8
Found with bugprone-macro-parentheses Signed-off-by: Rosen Penev <>
2022-04-22[clang-tidy] idevicebackup: Fix bad floating point castGravatar Rosen Penev1-3/+2
Found with bugprone-integer-division Signed-off-by: Rosen Penev <>
2022-04-22[clang-tidy] use const pointer parameterGravatar Rosen Penev3-3/+3
Found with readability-non-const-parameter Signed-off-by: Rosen Penev <>
2022-04-22[clang-tidy] idevicebackup2: use uppercase numeric literalsGravatar Rosen Penev1-1/+1
Found with readability-uppercase-literal-suffix Signed-off-by: Rosen Penev <>
2022-04-22Fix a few inconsistent declarationsGravatar Nikias Bassen2-9/+6
2022-04-22idevice: Fix mistreatment of 0-byte sent casesGravatar Li Beinan1-1/+4
Currently if 0 byte gets sent, it is treated as not-enough-data. This is wrong, because with TCP, 0-byte-sent usually means the receiver end is closed. We must set a new case for this and must not normalize the sent-bytes to 0 in general.
2022-04-22idevicebackup2: Allow passing backup password via environment variableGravatar Nikias Bassen2-7/+53
2022-04-12Suppress some doxygen warnings by removing obsolete entries from config fileGravatar Nikias Bassen1-52/+2
2022-04-12Add property_list_client_get_service_client() and service_get_connection() ↵Gravatar Nikias Bassen4-4/+40
functions This allows for custom service implementations to easier switch to non-plist communication after the service has been started.
2022-04-12Documentation fixesGravatar Nikias Bassen26-86/+177
2022-04-04Updated README with pkg-config requirementGravatar Nikias Bassen1-1/+2
2022-04-02idevicedebug: Add 'kill' command to kill a (debuggable) app by bundle IDGravatar Nikias Bassen1-2/+25
2022-04-02idevicedebug: Improve code readability and fix kill on stopGravatar Nikias Bassen1-190/+200
2022-04-01include: Update endianness.h with changes from limd-glueGravatar Nikias Bassen1-2/+2
The changes don't affect libimobiledevice itself but I don't want to have different versions of the same file across multiple repositories :)
2022-03-29idevice: Fix debug message showing function name twiceGravatar Nikias Bassen1-1/+1
2022-03-29idevicedebug: Use getopt for option parsingGravatar Nikias Bassen1-67/+89
2022-03-29idevicedebug: Use log_debug instead of debug_infoGravatar Nikias Bassen1-1/+1
2022-03-29Remove buggy and redundant debug outputGravatar Ben Wagner1-2/+0
2022-03-29Handle connection failures in debugserver_client_receive_response; also ↵Gravatar Ben Wagner1-92/+85
simplify the code
2022-03-29Reset receive params before killingGravatar Ben Wagner1-0/+5
2022-03-29FormatGravatar Ben Wagner3-31/+43
2022-03-29More fixesGravatar Ben Wagner1-4/+8
2022-03-29Handle abortGravatar Ben Wagner1-1/+9
2022-03-29Fix compileGravatar Ben Wagner2-2/+2
2022-03-29Add timeout and interrupt handling to debugserver. Fix ↵Gravatar Ben Wagner4-70/+74