Procházet zdrojové kódy

fix bind address in linux

Darien Raymond před 7 roky
rodič
revize
07aa486d43
1 změnil soubory, kde provedl 5 přidání a 0 odebrání
  1. 5 0
      transport/internet/sockopt_linux.go

+ 5 - 0
transport/internet/sockopt_linux.go

@@ -14,6 +14,11 @@ const (
 )
 
 func bindAddr(fd uintptr, address net.Address, port net.Port) error {
+	err = syscall.SetsockoptInt(fd, syscall.SOL_SOCKET, syscall.SO_REUSEADDR, 1)
+	if err != nil {
+		return newError("failed to set resuse_addr").Base(err).AtWarning()
+	}
+
 	var sockaddr syscall.Sockaddr
 
 	switch address.Family() {