diff --git a/internal/proxy/proxy.go b/internal/proxy/proxy.go index 1f241bde6..5c8732614 100644 --- a/internal/proxy/proxy.go +++ b/internal/proxy/proxy.go @@ -790,8 +790,13 @@ func (c *Client) Close() error { // serveSocketMount persistently listens to the socketMounts listener and proxies connections to a // given Cloud SQL instance. -func (c *Client) serveSocketMount(_ context.Context, s *socketMount) error { +func (c *Client) serveSocketMount(ctx context.Context, s *socketMount) error { for { + select { + case <-ctx.Done(): + return nil + default: + } cConn, err := s.Accept() if err != nil { if nerr, ok := err.(net.Error); ok && nerr.Timeout() {