Commit Graph

119 Commits

Author SHA1 Message Date
Jackson Coxson
080fea02eb Take ownership of socket in rsd_handshake_new FFI 2025-12-13 11:41:43 -07:00
Jackson Coxson
39d454d77d Add function to free arbitrary stream handle 2025-12-13 11:41:33 -07:00
Jackson Coxson
a3dcac93b2 Add plist_array_free helper function to FFI
a

b
2025-12-13 11:09:41 -07:00
Jackson Coxson
d2375e8f5c Convert plist array into boxed slice for installation_proxy get_apps FFI 2025-12-13 10:32:51 -07:00
Jackson Coxson
c1b7009a7b Create diagnostics_relay bindings 2025-11-28 22:46:11 -07:00
Jackson Coxson
f11a1bafff Enable SSL on iOS < 5 2025-11-17 12:27:45 -07:00
Jackson Coxson
e31f39eac0 Clean Rust 1.90 clippy warnings 2025-11-10 13:32:49 -07:00
Jackson Coxson
fbdc290d88 Remove device_id argument for usbmuxd save pair record 2025-11-10 11:16:40 -07:00
Jackson Coxson
6d4bd7e853 Add rlib to ffi build kind 2025-11-06 14:44:41 -07:00
Abdullah Al-Banna
b26dd17b13 impl tokio's AsyncRead/Write/Seek for AFC FileDescriptor (#33)
* AsyncWrite/Read/Seek

* clean up

* use only one field to store the future

This struct should not be shared across threads because simultaneous
operations
like reading, writing, or seeking could lead to data races or
inconsistent state, because the cursor moves.

Only one operation will ever run at a time, which allows us to safely
store
different types of pending operations (read, write, or seek) in the same
field.

* consume self without mut when closing

* clippy

* Add inner_file safety tests

* more tests

---------

Co-authored-by: Jackson Coxson <jkcoxson@gmail.com>
2025-10-28 07:57:35 -06:00
Jackson Coxson
7da735f141 Rewrite async runtime handling and port to tracing 2025-10-23 12:29:59 -06:00
Jackson Coxson
ec4663e93d Qualify unix from_raw_fd call in FFI 2025-10-23 10:10:07 -06:00
Jackson Coxson
20f00e38dd Idevice::from_fd only on unix 2025-10-23 09:52:51 -06:00
Jackson Coxson
a297eed156 Replace log crate with tracing 2025-10-23 09:49:38 -06:00
Jackson Coxson
18b8b7295c Set FFI error message to formatted error string 2025-10-22 10:27:13 -06:00
Jackson Coxson
0ccec70ed8 Implement creating an Idevice with a file descriptor 2025-10-22 10:26:57 -06:00
Jackson Coxson
7805f943af Update the C++ idevice.h header on build 2025-10-22 10:26:25 -06:00
Jackson Coxson
5ed2144d9e Add adapter_close to stop TCP stack 2025-10-22 10:26: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
c10f4da9f1 Add missing usbmuxd FFI methods 2025-10-18 22:10:14 -06:00
Jackson Coxson
fb3043b3e0 Update FFI examples to current idevice 2025-10-15 12:15:31 -06:00
Jackson Coxson
02f818a42a Add installation_proxy cpp bindings 2025-09-30 19:52:40 -06:00
Jackson Coxson
9f7e57bb21 Add cpp bindings for image mounter 2025-09-25 10:04:55 -06:00
Jackson Coxson
4fde7cf06b Timeout on port connect syn 2025-08-27 11:38:47 -06:00
Jackson Coxson
dff0c62ec7 Always compile with release flag
a
2025-08-25 17:08:07 -06:00
Jackson Coxson
82c3328afc Update FFI for app launch arguments 2025-08-24 17:53:05 -06:00
Jackson Coxson
6d90879096 Implement clone for RsdHandshake 2025-08-20 18:27:38 -06:00
Jackson Coxson
b772a2eeae Remove debug logging from tcp object stack
s
2025-08-20 12:48:08 -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
Jackson Coxson
50896b1dfe Use TCP multithreaded handle instead of lifetime handle for FFI 2025-08-15 14:55:36 -06:00
Jackson Coxson
e3f7aa8cb0 Create async handle in RUNTIME 2025-08-15 14:55:08 -06:00
Jackson Coxson
da8c5ce377 Bump plist_ffi 2025-08-15 13:50:18 -06:00
Jackson Coxson
c607909beb Implement ideviceinfo in cpp 2025-08-14 18:07:56 -06:00
Jackson Coxson
a16405f011 Separate headers into cpp source files 2025-08-14 17:02:58 -06:00
Jackson Coxson
388b50246a Re-add no-mangle to usbmuxd ffi function 2025-08-12 12:03:55 -06:00
Jackson Coxson
873505b9db Use crate util types in FFI lib.rs 2025-08-12 11:41:12 -06:00
Jackson Coxson
618500fd0c Use platform-independent socket for FFI
Windows is truly awful

Remove config.toml
2025-08-12 11:36:29 -06:00
Jackson Coxson
59f8058d3d Upload the correct folders 2025-08-12 09:04:54 -06:00
Jackson Coxson
70fd0648f5 remove plist.h from mounter example 2025-08-12 08:24:56 -06:00
Jackson Coxson
9f6bde458d Remove plist.h from lockdown example 2025-08-12 08:20:18 -06:00
Jackson Coxson
5ee385c95c Fix cargo clippy warnings 2025-08-12 08:19:31 -06:00
Jackson Coxson
0e4f12f0bf Append plist.h to idevice header 2025-08-12 08:05:02 -06:00
Jackson Coxson
4c9977157b Use downloaded plist.h 2025-08-12 07:52:44 -06:00
Jackson Coxson
0a0899cd8a Create concurrent TCP handle and implement RSD for non-lifetime structs 2025-08-11 10:41:58 -06:00
Jackson Coxson
d59f028251 Use option<&str> instead of owned option string 2025-08-08 10:18:31 -06:00
Jackson Coxson
1515b1bab4 Conditionally compile crypto backend 2025-07-31 11:52:42 -06:00