From 00a1c8fc8fedf66b65a1046626dbf253cbb2de8e Mon Sep 17 00:00:00 2001 From: MegaBrutal Date: Sat, 18 Feb 2023 15:45:00 +0100 Subject: [PATCH] Keep results of address lookups --- src/main.rs | 20 ++++++++++++-------- 1 file changed, 12 insertions(+), 8 deletions(-) diff --git a/src/main.rs b/src/main.rs index 3df7603..c62bc7f 100644 --- a/src/main.rs +++ b/src/main.rs @@ -60,18 +60,22 @@ impl From for HLQueryError { fn main() { let client = A2SClient::new().unwrap(); let addresses = args().skip(1) - .flat_map(|arg| arg.to_socket_addrs()) - .flat_map(|iter_addr| iter_addr.flat_map(|sa| match sa { - SocketAddr::V4(sa4) => Some(sa4), - _ => None - }) - ); + .map(|arg| arg.to_socket_addrs()) + .map(|lookup_result| match lookup_result { + Ok(iter_addr) => { + Ok(iter_addr.flat_map(|sa| match sa { + SocketAddr::V4(sa4) => Some(sa4), + _ => None + })) + }, + Err(e) => Err(e) + }); for address in addresses { - println!("Querying address: {}", address); + println!("Querying address: {:?}", address); - let result = HLQueryResult::new(&client, address); + let result = HLQueryResult::new(&client, address.unwrap().next().unwrap()); println!("{}\n", serde_json::to_string_pretty(&result).unwrap()); } -- 2.34.1