66 Commits

Author SHA1 Message Date
neo 4d94354da0 feat(dvt): wrappers for graphics, notifications, and energy monitor (#91)
also updates to include all dvt wrappers that werent mentioned
2026-04-30 10:36:30 -06:00
neo 0bbd4bb95d feat(ffi): expose wda and wda_bridge to C/C++ (#89)
* feat(ffi): expose wda and wda_bridge to C/C++

tested on an iPhone 13 with WebDriverAgent running:
status returns the right JSON screenshot saves a valid PNG
bridge forwards a curlrequest to the device's WDA port.

spent a while testing and writing this up do review before merging

* chore: lint
2026-04-27 14:03:32 -06:00
Jackson Coxson 463904f648 Implememt remaining DVT instruments 2026-04-05 12:00:12 -06:00
neo a714d35d95 docs: screenshotr, springboard, lockdown_location_simulation (#81) 2026-03-31 06:15:28 -06:00
Jackson Coxson e733dd0db2 Add image mounting functions for RSD providers 2026-03-30 15:46:14 -06:00
Jackson Coxson 8c956d2830 Add sub errors and clarify unexpected responses 2026-03-30 12:53:10 -06:00
neo 6056fb472d fix linux ci and cpp wrapper for LockdownLocationSimulation (#80) 2026-03-30 08:32:09 -06:00
Jackson Coxson 8554c6dfbf Implement JSON-brokered rppairing via FFI 2026-03-27 11:27:01 -06:00
Jackson Coxson bae57ec4d9 Implement rppairing (#79)
* Initial rppairing support

* Use idevice-srp crate

* Add more debug logging to rppairing

* Create pair_rsd_ios tool

* Start work on iOS rppairing

* Set RemoteXPC initial root ID to 0

* Send weird flags after opening reply stream

* Allow rppairing with underlying RemoteXPC connection

* fix(pair_rsd_ios): handle Linux mDNS link-local fallback (#73)

* Implement CDTunnel via rppairing

* Add example to rppair over CoreDeviceProxy

* Implement shim and FFI for RSD services

* Implement C++ RSD connect factories

---------

Co-authored-by: se2crid <151872490+se2crid@users.noreply.github.com>
2026-03-26 23:22:40 -06:00
Jackson Coxson 84dc820105 Implement missing FFI and C++ wrappers 2026-03-26 15:24:36 -06:00
Jackson Coxson c144211997 Implement FFI for mobilebackup2 2026-03-26 14:56:55 -06:00
neo 76d847664b feat(crashreportcopymobile): ffi bindings (#71)
* feat(crashreportcopymobile): ffi bindings

* chore: update readme
2026-02-16 19:12:17 -07:00
neo bfe44e16e4 feat: notification proxy (#70)
* init

* chore: clippy and fmt

* feat: ffi wrapper

* feat: multi-observe and timeout to notification proxy

* fix: nitpicks

1. proxy death its onw error in emun #69
2. make returned stream actual stream, copied from https://github.com/jkcoxson/idevice/blob/54439b85dd48663a4562ad01f63fbc57351e1f3d/idevice/src/services/bt_packet_logger.rs#L126-L138
2026-02-14 13:16:26 -07:00
uncor3 5bb9330cf6 add diag relay c++ bindings, screenshotr ffi (#58) 2026-01-14 14:46:47 -07:00
Jackson Coxson 9776516544 Free the outer slice in C++ usbmuxd::get_devices 2025-12-13 12:34:41 -07:00
Jackson Coxson 59c3c3a12c Add legacy argument to cpp start_session 2025-11-17 12:42:29 -07:00
Jackson Coxson 4fa46e4c54 chore: Changed the macOS deployment target to 10.12 (#34)
Co-authored-by: macmade <macmade@xs-labs.com>
2025-11-05 07:28:18 -07:00
Jackson Coxson 105a9b2837 Fix VS solution for idevice++ 2025-10-23 13:10:51 -06:00
Jackson Coxson 7527cdff7b Log in the screenshot cpp example 2025-10-23 12:29:36 -06:00
Jackson Coxson 20f00e38dd Idevice::from_fd only on unix 2025-10-23 09:52:51 -06:00
Jackson Coxson 0ccec70ed8 Implement creating an Idevice with a file descriptor 2025-10-22 10:26:57 -06:00
Jackson Coxson 5ed2144d9e Add adapter_close to stop TCP stack 2025-10-22 10:26:13 -06:00
Jackson Coxson dd2db92967 Update Xcode solution 2025-10-21 11:12:13 -06:00
Jackson Coxson 94624f07af Rename screenshot_clear to screenshot_take_screenshot in FFI 2025-10-21 09:16:47 -06:00
Jackson Coxson a7daac3a46 Add DVT screenshot bindings 2025-10-21 08:47:07 -06:00
Jackson Coxson b897c3a126 Remove MacOS only headers from idevice++ src 2025-10-15 12:22:32 -06:00
Jackson Coxson dc06ba0802 Implement process control cpp bindings 2025-10-01 08:18:34 -06:00
Jackson Coxson b49d5194b9 Remove MacOS u64 cpp header type 2025-09-30 19:56:41 -06:00
Jackson Coxson 02f818a42a Add installation_proxy cpp bindings 2025-09-30 19:52:40 -06:00
Jackson Coxson c6d63d1f5d Add heartbeat cpp bindings 2025-09-30 19:02:56 -06:00
Jackson Coxson 9ed4cd8a55 Fix mounter cpp build on Linux 2025-09-25 13:55:23 -06:00
Jackson Coxson 9f7e57bb21 Add cpp bindings for image mounter 2025-09-25 10:04:55 -06:00
Jackson Coxson d9bcecb634 Specify temporary lvalue in option match
Fixes building on Windows
2025-09-03 20:55:26 -06:00
Jackson Coxson b0e3c5769a Remove dangerous result/option macros 2025-09-03 19:48:43 -06:00
Jackson Coxson c2ef847c0a Decrease visual studio to cpp14 2025-08-29 14:39:33 -06:00
Jackson Coxson 44b504c72e Increase cpp standard to 14 2025-08-29 14:33:28 -06:00
Jackson Coxson 1169408da1 Remove cpp 17 features and implement Rust into CPP 2025-08-29 14:19:28 -06:00
Jackson Coxson 7baa8a73b5 Support Win32 cpp build 2025-08-25 21:41:34 -06:00
Jackson Coxson f18b607bca Add visual studio solution to idevice++ 2025-08-25 21:26:10 -06:00
Jackson Coxson dff0c62ec7 Always compile with release flag
a
2025-08-25 17:08:07 -06:00
Jackson Coxson 8846f9a429 Copy idevice.h to cpp include folder during xcode build
Move to include folder
2025-08-25 16:12:55 -06:00
Jackson Coxson 584adc5014 Create xcproj for idevice++ 2025-08-25 15:53:01 -06:00
Jackson Coxson 82c3328afc Update FFI for app launch arguments 2025-08-24 17:53:05 -06:00
Jackson Coxson 7fdaac9327 Include cstring for Linux cpp build 2025-08-21 09:02:26 -06:00
Jackson Coxson 6d90879096 Implement clone for RsdHandshake 2025-08-20 18:27:38 -06:00
Jackson Coxson af815c2f36 cmake for building idevice++ 2025-08-20 12:42:49 -06:00
Jackson Coxson 2a90f926ca Implement FFI object stack 2025-08-20 12:42:40 -06:00
Jackson Coxson 2b75fe1c05 Diagnosticsservice FFI and CPP bindings 2025-08-16 12:21:47 -06:00
Jackson Coxson 46635e162a Debug proxy cpp example 2025-08-15 16:38:56 -06:00
Jackson Coxson 94a361eb4e App service cpp example 2025-08-15 16:14:24 -06:00