mirror of
https://github.com/jkcoxson/idevice.git
synced 2026-03-02 22:46:14 +01:00
Add option for libimobiledevice environment variable read
This commit is contained in:
@@ -1,6 +1,9 @@
|
||||
// Jackson Coxson
|
||||
|
||||
use std::net::{IpAddr, Ipv4Addr, Ipv6Addr, SocketAddr, SocketAddrV4};
|
||||
use std::{
|
||||
net::{AddrParseError, IpAddr, Ipv4Addr, Ipv6Addr, SocketAddr, SocketAddrV4},
|
||||
str::FromStr,
|
||||
};
|
||||
|
||||
use log::debug;
|
||||
use tokio::io::{AsyncReadExt, AsyncWriteExt};
|
||||
@@ -52,6 +55,19 @@ impl UsbmuxdAddr {
|
||||
let socket = self.to_socket().await?;
|
||||
Ok(UsbmuxdConnection::new(socket, tag))
|
||||
}
|
||||
|
||||
pub fn from_env_var() -> Result<Self, AddrParseError> {
|
||||
Ok(match std::env::var("USBMUXD_SOCKET_ADDRESS") {
|
||||
Ok(var) => {
|
||||
if var.contains(':') {
|
||||
Self::TcpSocket(SocketAddr::from_str(&var)?)
|
||||
} else {
|
||||
Self::UnixSocket(var)
|
||||
}
|
||||
}
|
||||
Err(_) => Self::default(),
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
impl Default for UsbmuxdAddr {
|
||||
|
||||
Reference in New Issue
Block a user