update: HTTP API

This commit is contained in:
Oarkflow
2025-03-30 16:55:32 +05:45
parent ba75adc7d6
commit 31a9fb8ba7
11 changed files with 340 additions and 85 deletions

View File

@@ -13,3 +13,17 @@ func ConnectionsEqual(c1, c2 net.Conn) bool {
}
return localAddr(c1) == localAddr(c2) && remoteAddr(c1) == remoteAddr(c2)
}
// GetRandomPort returns a free port chosen by the operating system.
func GetRandomPort() (int, error) {
// Bind to port 0, which instructs the OS to assign an available port.
ln, err := net.Listen("tcp", ":0")
if err != nil {
return 0, err
}
defer ln.Close()
// Extract the port number from the listener's address.
addr := ln.Addr().(*net.TCPAddr)
return addr.Port, nil
}