From af745bd97dce317a8788589588ae754711df69af Mon Sep 17 00:00:00 2001 From: Eugene Apollonsky Date: Mon, 9 Aug 2021 15:31:31 +0300 Subject: [PATCH] use listen to ensure the port is free (#6990) (#7467) Co-authored-by: boxjan --- internal/net/net.go | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/internal/net/net.go b/internal/net/net.go index b7fefb8b3..712262f3a 100644 --- a/internal/net/net.go +++ b/internal/net/net.go @@ -29,12 +29,12 @@ func IsIPV6(ip _net.IP) bool { // IsPortAvailable checks if a TCP port is available or not func IsPortAvailable(p int) bool { - conn, err := _net.Dial("tcp", fmt.Sprintf(":%v", p)) + ln, err := _net.Listen("tcp", fmt.Sprintf(":%v", p)) if err != nil { - return true + return false } - defer conn.Close() - return false + defer ln.Close() + return true } // IsIPv6Enabled checks if IPV6 is enabled or not and we have