Tool
libimobiledevice
C library and command-line tools that speak iOS devices' native service protocols without Apple's proprietary libraries or a jailbreak. Over usbmuxd or Wi-Fi sync it implements lockdownd pairing and services such as AFC file access, backup, app installation, crash reports, syslog, debugserver and WebKit inspection, plus Cython bindings.
Requirements & limits
- Latest release: 1.4.0 (2025-10-10), which NEWS calls a development release; it added MbedTLS support, Apple TV wireless pairing and iOS 17+ personalized developer disk image mounting, among other changes. The reviewed master commit of 2026-06-10 is nine commits ahead, mostly AFC and afcclient fixes.
- Source builds use autotools and pkg-config with libplist 2.3.0+, libusbmuxd 2.0.2+, libimobiledevice-glue 1.3.0+ and libtatsu 1.0.3+ from the same organization (README says libtatsu must be built from source), plus OpenSSL by default, GnuTLS or MbedTLS; Doxygen and Cython are optional. The README dependency list includes the usbmuxd daemon and says the library is tested on Linux, macOS, Windows and Android.
- Work starts from an iOS device the user controls and pairs with the host (idevicepair); the repository contains no Apple software. Screenshots and location simulation need a mounted Apple developer disk image, which is not included. README says library documentation is not yet available and points to the bundled utilities' source; each utility has a manual page.
- GitHub Actions builds and installs the library on Ubuntu, macOS and Windows (MSYS2 MINGW64 and MINGW32) against the latest builds of its sibling libraries, on pushes, pull requests and a monthly schedule. The repository has no test suite, and no workflow exercises a device.
- LGPL-2.1 for the library and utilities. The bundled ed25519 (zlib-style license) and Stanford SRP-based libsrp6a-sha512 (BSD-style) keep their own licenses. README states that the project is independent and not authorized, sponsored or approved by Apple.
About this entry
- Type
- Tool
- Category
- Protocol analysis tools
- Relationship
- Foundation tool
- Targets
- App · Protocol
Sources reviewed
The description was reviewed against primary sources. This does not establish runtime testing, security auditing or verified compatibility.
Primary sources
- README.md GitHub · libimobiledevice/libimobiledevice · Revision fa0f791
- NEWS GitHub · libimobiledevice/libimobiledevice · Revision fa0f791
- configure.ac GitHub · libimobiledevice/libimobiledevice · Revision fa0f791
- .github/workflows/build.yml GitHub · libimobiledevice/libimobiledevice · Revision fa0f791
- src GitHub · libimobiledevice/libimobiledevice · Revision fa0f791
- 3rd_party/README.md GitHub · libimobiledevice/libimobiledevice · Revision fa0f791
- COPYING GitHub · libimobiledevice/libimobiledevice · Revision fa0f791
- https://github.com/libimobiledevice/libimobiledevice/releases/tag/1.4.0
More in Protocols
- Sniffle · Tool
- Packetry · Tool
- open-appleremote: Siri Remote protocol reconstruction · Case study
- GAMEKB-K17: reconstructing a macropad configuration protocol · Case study
- cooler-lcd: a Thermalright display protocol implementation · Case study
- NJFE: a Soulear camera protocol bridge for desktop inspection · Case study