open-im-server/pkg/common/startrpc/socket_windows.go
2024-09-04 19:23:39 +08:00

27 lines
544 B
Go

//go:build windows
package startrpc
import (
"context"
"github.com/openimsdk/tools/log"
"net"
"syscall"
)
func createListener() net.ListenConfig {
lc := net.ListenConfig{
Control: func(network, address string, conn syscall.RawConn) error {
return conn.Control(func(fd uintptr) {
err := syscall.SetsockoptInt(syscall.Handle(fd), syscall.SOL_SOCKET, syscall.SO_REUSEADDR, 1)
if err != nil {
log.ZError(context.Background(), "Failed to set socket flag to SO_REUSEADDR", err)
return
}
})
},
}
return lc
}