From 77cb607f01980ef2a6493a1bd41e23e42cbc7012 Mon Sep 17 00:00:00 2001 From: cyBerta <cyberta@riseup.net> Date: Sat, 29 Mar 2025 20:42:59 +0100 Subject: [PATCH] use cancellableSleep also for error handling in readUDPWriteTCP, so that we avoid trying to establish a obfs4 connection while obfsvpn is already about to shutdown --- client/client.go | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/client/client.go b/client/client.go index cb061c8..70bce4b 100644 --- a/client/client.go +++ b/client/client.go @@ -417,9 +417,11 @@ func (c *Client) readUDPWriteTCP() { _, err = conn.Write(tcpBuffer) if err != nil { c.error("readUDPWriteTCP: Write err from %v to %v: %v", conn.LocalAddr(), conn.RemoteAddr(), err) - time.Sleep(reconnectTime) - config := c.obfs4Conns[0].config - c.connectObfs4(&config, 20) + cancelled := cancellableSleep(c.ctx, reconnectTime) + if !cancelled { + config := c.obfs4Conns[0].config + c.connectObfs4(&config, 20) + } } } } -- GitLab