aboutsummaryrefslogtreecommitdiff
path: root/controller/src/lib.rs
diff options
context:
space:
mode:
Diffstat (limited to 'controller/src/lib.rs')
-rw-r--r--controller/src/lib.rs9
1 files changed, 9 insertions, 0 deletions
diff --git a/controller/src/lib.rs b/controller/src/lib.rs
index b53502f..60b3639 100644
--- a/controller/src/lib.rs
+++ b/controller/src/lib.rs
@@ -120,6 +120,15 @@ enum ThreadCollect {
async fn thread_handshake_handler(mut listener: TcpListener, sink: mpsc::Sender<ThreadCollect>) {
loop {
let (mut sock, _) = listener.accept().await.expect("Accept failed on TCP server socket");
+
+ // Error setting keepalive is not fatal
+ match sock.set_keepalive(Some(std::time::Duration::from_secs(60))) {
+ Ok(()) => {}
+ Err(e) => {
+ eprintln!("WARNING: Error setting keepalive on worker socket: {}", e);
+ }
+ }
+
let mut sink = sink.clone();
task::spawn(async move {
let payload = encode_message(MessageBody::Version(1));