()
| 294 | } |
| 295 | |
| 296 | func getLocalHostPort() (int, func() error, error) { |
| 297 | addr, err := net.ResolveTCPAddr("tcp", "localhost:0") |
| 298 | if err != nil { |
| 299 | return 0, nil, err |
| 300 | } |
| 301 | |
| 302 | l, err := net.ListenTCP("tcp", addr) |
| 303 | if err != nil { |
| 304 | return 0, nil, err |
| 305 | } |
| 306 | |
| 307 | closePort := func() error { |
| 308 | return l.Close() |
| 309 | } |
| 310 | return l.Addr().(*net.TCPAddr).Port, closePort, nil |
| 311 | } |