diff options
author | Mathias Fredriksson <mafredri@gmail.com> | 2022-02-08 22:05:31 +0200 |
---|---|---|
committer | Mathias Fredriksson <mafredri@gmail.com> | 2022-02-08 22:16:20 +0200 |
commit | eb2617ac12b2432e8d8d22c7cae64b887d1c70e5 (patch) | |
tree | 61cac9885254a70b31b3ae8051a8f231f3e76536 /m4p/client.go | |
parent | 6436c86e0c53d9fbd83d883f76cbd8a267b6428e (diff) |
m4p: Avoid spamming use of closed network connection
Diffstat (limited to 'm4p/client.go')
-rw-r--r-- | m4p/client.go | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/m4p/client.go b/m4p/client.go index 526e6c2..45f8b77 100644 --- a/m4p/client.go +++ b/m4p/client.go @@ -4,6 +4,7 @@ import ( "context" "encoding/hex" "encoding/json" + "errors" "fmt" "log" "net" @@ -102,6 +103,10 @@ recvLoop: n, err := c.conn.Read(buf[:]) if err != nil { + if errors.Is(err, net.ErrClosed) { + log.Printf("m4p: Client: recv: connection closed: %v", err) + return + } log.Printf("m4p: Client: recv: read udp packet failed: %v", err) continue } @@ -163,6 +168,10 @@ func (c *Client) keepalive() { case <-clientKeepalive: _, err := c.conn.Write([]byte("{}")) if err != nil { + if errors.Is(err, net.ErrClosed) { + log.Printf("m4p: Client: keepalive: connection closed: %v", err) + return + } log.Printf("m4p: Client: keepalive: send client keepalive failed, disconnecting...") return } |