Files
idevice/idevice/Cargo.toml

125 lines
3.3 KiB
TOML

[package]
name = "idevice"
description = "A Rust library to interact with services on iOS devices."
authors = ["Jackson Coxson"]
version = "0.1.37"
edition = "2021"
license = "MIT"
documentation = "https://docs.rs/idevice"
repository = "https://github.com/jkcoxson/idevice"
keywords = ["lockdownd", "ios"]
[dependencies]
tokio = { version = "1.43", features = ["io-util"] }
tokio-rustls = { version = "0.26", default-features = false }
rustls = { version = "0.23", default-features = false }
crossfire = { version = "2.0", optional = true } # TODO: update to 2.1 when it comes out
plist = { version = "1.7" }
serde = { version = "1", features = ["derive"] }
ns-keyed-archive = { version = "0.1.3", optional = true }
thiserror = { version = "2" }
log = { version = "0.4" }
env_logger = { version = "0.11" }
base64 = { version = "0.22" }
indexmap = { version = "2.7", features = ["serde"], optional = true }
uuid = { version = "1.12", features = ["serde", "v4"], optional = true }
chrono = { version = "0.4.40", optional = true, default-features = false }
serde_json = { version = "1", optional = true }
json = { version = "0.12", optional = true }
byteorder = { version = "1.5", optional = true }
bytes = { version = "1.10", optional = true }
reqwest = { version = "0.12", features = [
"json",
], optional = true, default-features = false }
rand = { version = "0.9", optional = true }
futures = { version = "0.3", optional = true }
sha2 = { version = "0.10", optional = true, features = ["oid"] }
rsa = { version = "0.9", optional = true, features = ["sha2"] }
x509-cert = { version = "0.2", optional = true, features = [
"builder",
"pem",
], default-features = false }
obfstr = { version = "0.4", optional = true }
[dev-dependencies]
tokio = { version = "1.43", features = ["full"] }
tun-rs = { version = "2.0.8", features = ["async_tokio"] }
bytes = "1.10.1"
[features]
default = ["aws-lc"]
aws-lc = ["rustls/aws-lc-rs", "tokio-rustls/aws-lc-rs"]
ring = ["rustls/ring", "tokio-rustls/ring"]
afc = ["dep:chrono"]
amfi = []
core_device = ["xpc", "dep:uuid"]
core_device_proxy = ["dep:serde_json", "dep:json", "dep:byteorder"]
crashreportcopymobile = ["afc"]
debug_proxy = []
diagnostics_relay = []
dvt = ["dep:byteorder", "dep:ns-keyed-archive"]
heartbeat = ["tokio/macros", "tokio/time"]
house_arrest = ["afc"]
installation_proxy = []
springboardservices = []
misagent = []
mobile_image_mounter = ["dep:sha2"]
location_simulation = []
pair = ["chrono/default", "tokio/time", "dep:sha2", "dep:rsa", "dep:x509-cert"]
obfuscate = ["dep:obfstr"]
restore_service = []
rsd = ["xpc"]
syslog_relay = ["dep:bytes"]
tcp = ["tokio/net"]
tunnel_tcp_stack = [
"dep:rand",
"dep:futures",
"tokio/fs",
"tokio/sync",
"dep:crossfire",
]
tss = ["dep:uuid", "dep:reqwest"]
tunneld = ["dep:serde_json", "dep:json", "dep:reqwest"]
usbmuxd = ["tokio/net"]
xpc = ["dep:indexmap", "dep:uuid"]
full = [
"afc",
"amfi",
"core_device",
"core_device_proxy",
"crashreportcopymobile",
"debug_proxy",
"diagnostics_relay",
"dvt",
"heartbeat",
"house_arrest",
"installation_proxy",
"location_simulation",
"misagent",
"mobile_image_mounter",
"pair",
"restore_service",
"rsd",
"springboardservices",
"syslog_relay",
"tcp",
"tunnel_tcp_stack",
"tss",
"tunneld",
"usbmuxd",
"xpc",
]
[package.metadata.docs.rs]
all-features = true