From 52ba6822ad06d9f0c6659641c77f89f94dc345a6 Mon Sep 17 00:00:00 2001 From: Ian Jackson Date: Sun, 2 Feb 2025 13:46:48 +0000 Subject: [PATCH] Prep for hyper 1: Move saddr conversion earlier And prepare for doing the listening here. Signed-off-by: Ian Jackson --- server/server.rs | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/server/server.rs b/server/server.rs index 18f69fe..a5c71a3 100644 --- a/server/server.rs +++ b/server/server.rs @@ -251,7 +251,18 @@ async fn async_main(opts: Opts, daemon: Option) { }), format!("client {}", &ic))); } - for saddr in &global.config.addrs { + let listeners = { + let mut listeners = vec![]; + for saddr in &global.config.addrs { + let saddr = SocketAddr::new(*saddr, global.config.port); + // TODO move bind() here + let listener = (); + listeners.push((saddr, listener)); + } + listeners + }; + + for (saddr, listener) in listeners { let make_service = hyper::service::make_service_fn({ let global = global.clone(); move |conn: &hyper::server::conn::AddrStream| { @@ -278,7 +289,7 @@ async fn async_main(opts: Opts, daemon: Option) { } }); - let saddr = SocketAddr::new(*saddr, global.config.port); + let () = listener; // TODO move bind() earlier. let server = hyper::Server::try_bind(&saddr) .context("bind")? .http1_preserve_header_case(true) -- 2.30.2