aquatic_ws: add more anyhow error context annotations

This commit is contained in:
Joakim Frostegård 2020-05-23 17:15:11 +02:00
parent 65684472a6
commit b9ee290ca0
4 changed files with 19 additions and 12 deletions

View file

@ -16,19 +16,24 @@ pub fn create_listener(
TcpBuilder::new_v4()
} else {
TcpBuilder::new_v6()
}?;
}.context("Couldn't create TcpBuilder")?;
if config.network.ipv6_only {
builder = builder.only_v6(true)
.context("Failed setting ipv6_only to true")?
.context("Couldn't put socket in ipv6 only mode")?
}
builder = builder.reuse_port(true)?;
builder = builder.bind(&config.network.address)?;
builder = builder.reuse_port(true)
.context("Couldn't put socket in reuse_port mode")?;
builder = builder.bind(&config.network.address).with_context(||
format!("Couldn't bind socket to address {}", config.network.address)
)?;
let listener = builder.listen(128)?;
let listener = builder.listen(128)
.context("Couldn't listen for connections on socket")?;
listener.set_nonblocking(true)?;
listener.set_nonblocking(true)
.context("Couldn't put tcp listener in non-blocking mode")?;
Ok(listener)
}