diff options
Diffstat (limited to 'src/util.rs')
-rw-r--r-- | src/util.rs | 31 |
1 files changed, 0 insertions, 31 deletions
diff --git a/src/util.rs b/src/util.rs deleted file mode 100644 index 6e814ab..0000000 --- a/src/util.rs +++ /dev/null @@ -1,31 +0,0 @@ -use crate::prelude::*; -use std::net::ToSocketAddrs as _; - -pub fn program_name() -> Result<String> { - let program = - std::env::args().next().context(crate::error::MissingArgv)?; - let path = std::path::Path::new(&program); - let filename = path.file_name(); - Ok(filename - .ok_or_else(|| Error::NotAFileName { - path: path.to_string_lossy().to_string(), - })? - .to_string_lossy() - .to_string()) -} - -// XXX this does a blocking dns lookup - should try to find an async version -pub fn resolve_address( - address: &str, -) -> Result<(String, std::net::SocketAddr)> { - let mut address_parts = address.split(':'); - let host = address_parts.next().context(crate::error::ParseAddress)?; - let port = address_parts.next().context(crate::error::ParseAddress)?; - let port: u16 = port.parse().context(crate::error::ParsePort)?; - let socket_addr = (host, port) - .to_socket_addrs() - .context(crate::error::ResolveAddress)? - .next() - .context(crate::error::HasResolvedAddr)?; - Ok((host.to_string(), socket_addr)) -} |