From 11c823701b12f10933b40044a12cc4048ccf8bd2 Mon Sep 17 00:00:00 2001 From: Eskil Queseth Date: Sat, 31 Oct 2020 02:27:26 +0100 Subject: add support for mumctl server list --- mumlib/src/config.rs | 11 +++++++++++ 1 file changed, 11 insertions(+) (limited to 'mumlib/src/config.rs') diff --git a/mumlib/src/config.rs b/mumlib/src/config.rs index e6b97fd..e7d107a 100644 --- a/mumlib/src/config.rs +++ b/mumlib/src/config.rs @@ -4,6 +4,8 @@ use std::fs; use std::path::Path; use toml::value::Array; use toml::Value; +use std::net::{SocketAddr, ToSocketAddrs}; +use crate::DEFAULT_PORT; #[derive(Debug, Deserialize, Serialize)] struct TOMLConfig { @@ -58,6 +60,15 @@ pub struct ServerConfig { pub password: Option, } +impl ServerConfig { + pub fn to_socket_addr(&self) -> Option { + match (self.host.as_str(), self.port.unwrap_or(DEFAULT_PORT)).to_socket_addrs().map(|mut e| e.next()) { + Ok(Some(addr)) => Some(addr), + _ => None, + } + } +} + pub fn get_cfg_path() -> String { if let Ok(var) = std::env::var("XDG_CONFIG_HOME") { let path = format!("{}/mumdrc", var); -- cgit v1.2.1