From 0727bdbe1ffe5bf1d332b8bfa62650e89c01b1d7 Mon Sep 17 00:00:00 2001 From: Nikos Mavrogiannopoulos Date: Sun, 24 May 2026 22:06:48 +0200 Subject: [PATCH] worker: detect and handle errors in socket from main Signed-off-by: Nikos Mavrogiannopoulos --- src/worker-vpn.c | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/src/worker-vpn.c b/src/worker-vpn.c index 879b9d37..c2dca661 100644 --- a/src/worker-vpn.c +++ b/src/worker-vpn.c @@ -2918,8 +2918,15 @@ static void cstp_send_terminate(struct worker_st *ws) static void command_watcher_cb(EV_P_ ev_io *w, int revents) { struct worker_st *ws = ev_userdata(worker_loop); + int ret; - int ret = handle_commands_from_main(ws); + if (revents & EV_ERROR) { + terminate_reason = REASON_ERROR; + cstp_send_terminate(ws); + /* unreachable */ + } + + ret = handle_commands_from_main(ws); if (ret == ERR_NO_CMD_FD) { terminate_reason = REASON_ERROR;