client: support servers which don't provide UDP ports (#21)

This commit is contained in:
aler9
2021-01-20 23:23:35 +01:00
parent c6e0294e1c
commit b9dfe1b310
4 changed files with 50 additions and 10 deletions

View File

@@ -578,7 +578,7 @@ func (c *ClientConn) Setup(mode headers.TransportMode, track *Track,
if thRes.ServerPorts == nil {
rtpListener.close()
rtcpListener.close()
return nil, fmt.Errorf("server ports not provided")
return nil, fmt.Errorf("server ports have not been provided. Use AnyPortEnable to communicate with this server")
}
if (thRes.ServerPorts[0] == 0 && thRes.ServerPorts[1] != 0) ||
@@ -588,8 +588,10 @@ func (c *ClientConn) Setup(mode headers.TransportMode, track *Track,
return nil, fmt.Errorf("server ports must be both zero or both not zero")
}
if thRes.ServerPorts[0] == 0 && thRes.ServerPorts[1] == 0 {
return nil, fmt.Errorf("server ports are zero")
if !c.conf.AnyPortEnable {
if thRes.ServerPorts[0] == 0 && thRes.ServerPorts[1] == 0 {
return nil, fmt.Errorf("server ports have not been provided. Use AnyPortEnable to communicate with this server")
}
}
} else {