Skip to main content

ios_core/
error.rs

1use crate::lockdown::pair_record::PairRecordError;
2
3/// Aggregated error type for ios-core operations.
4#[derive(Debug, thiserror::Error)]
5pub enum CoreError {
6    #[error("IO error: {0}")]
7    Io(#[from] std::io::Error),
8    #[error("usbmuxd error: {0}")]
9    Mux(#[from] crate::mux::MuxError),
10    #[error("lockdown error: {0}")]
11    Lockdown(#[from] crate::lockdown::LockdownError),
12    #[error("pair record error: {0}")]
13    PairRecord(#[from] PairRecordError),
14    #[error("tunnel error: {0}")]
15    Tunnel(#[from] crate::tunnel::TunnelError),
16    #[error("XPC error: {0}")]
17    Xpc(#[from] crate::xpc::XpcError),
18    #[error("JSON error: {0}")]
19    Json(#[from] serde_json::Error),
20    #[error("protocol error: {0}")]
21    Protocol(String),
22    #[error("device not found: {0}")]
23    DeviceNotFound(String),
24    #[error("operation not supported: {0}")]
25    Unsupported(String),
26    #[error("{0}")]
27    Other(String),
28}