24 lines
382 B
Go
24 lines
382 B
Go
package utils
|
|
|
|
import "net"
|
|
|
|
func GetFreePort() (int, error) {
|
|
addr, err := net.ResolveTCPAddr("tcp", "localhost:0")
|
|
if err != nil {
|
|
return 0, err
|
|
}
|
|
|
|
l, err := net.ListenTCP("tcp", addr)
|
|
if err != nil {
|
|
return 0, err
|
|
}
|
|
defer l.Close()
|
|
return l.Addr().(*net.TCPAddr).Port, nil
|
|
}
|
|
|
|
// converts bool to on/off format
|
|
var SW = map[bool]string{
|
|
true: "on",
|
|
false: "off",
|
|
}
|