diff --git a/client/main.go b/client/main.go index 2d453db..792bf80 100644 --- a/client/main.go +++ b/client/main.go @@ -56,7 +56,11 @@ func getVkCreds(link string) (string, string, string, error) { if err != nil { return nil, err } - defer httpResp.Body.Close() + defer func() { + if closeErr := httpResp.Body.Close(); closeErr != nil { + log.Printf("close response body: %s", closeErr) + } + }() body, err := io.ReadAll(httpResp.Body) if err != nil { @@ -267,7 +271,11 @@ func getYandexCreds(link string) (string, string, string, error) { if err != nil { return "", "", "", err } - defer resp.Body.Close() + defer func() { + if closeErr := resp.Body.Close(); closeErr != nil { + log.Printf("close response body: %s", closeErr) + } + }() if resp.StatusCode != http.StatusOK { body, _ := io.ReadAll(resp.Body) return "", "", "", fmt.Errorf("GetConference: status=%s body=%s", resp.Status, string(body)) @@ -295,7 +303,11 @@ func getYandexCreds(link string) (string, string, string, error) { if err != nil { return "", "", "", fmt.Errorf("ws dial: %w", err) } - defer conn.Close() + defer func() { + if closeErr := conn.Close(); closeErr != nil { + log.Printf("close websocket: %s", closeErr) + } + }() req1 := HelloRequest{ UID: uuid.New().String(), diff --git a/server/main.go b/server/main.go index 87ee9d6..819f9b5 100644 --- a/server/main.go +++ b/server/main.go @@ -89,7 +89,11 @@ func main() { wg1.Add(1) go func(conn net.Conn) { defer wg1.Done() - defer conn.Close() // graceful shutdown + defer func() { + if closeErr := conn.Close(); closeErr != nil { + log.Printf("failed to close incoming connection: %s", closeErr) + } + }() var err error = nil log.Printf("Connection from %s\n", conn.RemoteAddr()) // `conn` is of type `net.Conn` but may be casted to `dtls.Conn`