Commit Graph

84 Commits

Author SHA1 Message Date
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
Jackson Coxson
b8e2b115a5 Use opaque handle for readwrite objects 2025-05-26 16:34:15 -06:00
Jackson Coxson
fa88c2c87d Refactor FFI bindings 2025-05-26 12:52:23 -06:00
khcrysalis
135452157a feat: ffi bindings for os_trace_relay (#8)
* feat: ffi bindings for os_trace_relay

* Update os_trace_relay.rs
2025-05-25 15:05:48 -06:00
khcrysalis
b8e0989549 feat: ffi bindings for syslog (#7) 2025-05-14 23:57:38 -06:00
Jackson Coxson
d114ec8369 Add missing error codes 2025-04-10 20:23:42 -06:00
Jackson Coxson
7c922382cb Misagent bindings 2025-04-10 20:15:48 -06:00
Jackson Coxson
32b175028f afc bindings 2025-04-08 17:29:58 -06:00
Jackson Coxson
8e192c4556 Implement amfi developer mode 2025-04-08 09:28:48 -06:00
Jackson Coxson
2859b691df Finish installation proxy bindings 2025-04-07 09:44:11 -06:00
Jackson Coxson
6056fddf3f Add domain to lockdown get value 2025-04-06 22:37:07 -06:00