Commit Graph

94 Commits

Author SHA1 Message Date
Jackson Coxson
44e8b83698 Free data with underlying vec with vec recreation 2025-12-13 13:08:33 -07:00
Jackson Coxson
9776516544 Free the outer slice in C++ usbmuxd::get_devices 2025-12-13 12:34:41 -07:00
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
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
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
02f818a42a Add installation_proxy cpp bindings 2025-09-30 19:52:40 -06:00
Jackson Coxson
4fde7cf06b Timeout on port connect syn 2025-08-27 11:38:47 -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
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
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
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
6c7906b026 Replace libplist with plist_ffi crate 2025-07-30 14:39:32 -06:00
Jackson Coxson
648a92fa37 Add missing usbmuxd functions to FFI 2025-07-22 10:48:36 -06:00
Jackson Coxson
4b6725b51f Clarify AdapterStream FFI docs 2025-07-21 08:18:31 -06:00
Jackson Coxson
f818225c8c Implement FFI for App Service 2025-07-19 23:50:03 -06:00
Jackson Coxson
e6c9563909 Update FFI bindings for get_all domain lookup 2025-07-03 09:45:47 -06:00
Jackson Coxson
2d9259f996 Fix location simulation C example 2025-06-26 11:49:52 -06:00
Jackson Coxson
35ba07889b Update FFI to use error struct for message 2025-06-02 19:42:19 -06:00
Jackson Coxson
3025c797a3 Write documentation for os_trace_relay FFI 2025-05-26 21:00:47 -06:00
Jackson Coxson
2c02dfef30 Merge branch 'master' into xpc-rewrite 2025-05-26 20:39:24 -06:00