Add support for passive ICE TCP candidate

Closes #196
This commit is contained in:
Jerko Steiner
2020-07-04 09:49:55 +02:00
parent f287f49c89
commit 12f44e93f1
20 changed files with 907 additions and 38 deletions

20
util.go
View File

@@ -53,6 +53,15 @@ func parseAddr(in net.Addr) (net.IP, int, NetworkType, bool) {
return nil, 0, 0, false
}
func createAddr(network NetworkType, ip net.IP, port int) net.Addr {
switch {
case network.IsTCP():
return &net.TCPAddr{IP: ip, Port: port}
default:
return &net.UDPAddr{IP: ip, Port: port}
}
}
func addrEqual(a, b net.Addr) bool {
aIP, aPort, aType, aOk := parseAddr(a)
if !aOk {
@@ -221,14 +230,3 @@ func listenUDPInPortRange(vnet *vnet.Net, log logging.LeveledLogger, portMax, po
}
return nil, ErrPort
}
func addrIPAndPort(addr net.Addr) (net.IP, int, error) {
switch casted := addr.(type) {
case *net.UDPAddr:
return casted.IP, casted.Port, nil
case *net.TCPAddr:
return casted.IP, casted.Port, nil
default:
return nil, 0, fmt.Errorf("unsupported address type %T", addr)
}
}