mirror of
https://github.com/aler9/gortsplib
synced 2025-10-05 07:06:58 +08:00
avoid using net.ResolveUDPAddr()
This commit is contained in:
@@ -58,15 +58,12 @@ func newClientConnUDPListenerPair(cc *ClientConn) (*clientConnUDPListener, *clie
|
||||
func newClientConnUDPListener(cc *ClientConn, multicast bool, address string) (*clientConnUDPListener, error) {
|
||||
var pc *net.UDPConn
|
||||
if multicast {
|
||||
addr, err := net.ResolveUDPAddr("udp4", address)
|
||||
host, port, err := net.SplitHostPort(address)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
tmp, err := cc.c.ListenPacket("udp4", (&net.UDPAddr{
|
||||
IP: net.ParseIP("224.0.0.0"),
|
||||
Port: addr.Port,
|
||||
}).String())
|
||||
tmp, err := cc.c.ListenPacket("udp4", "224.0.0.0:"+port)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
@@ -84,7 +81,7 @@ func newClientConnUDPListener(cc *ClientConn, multicast bool, address string) (*
|
||||
}
|
||||
|
||||
for _, intf := range intfs {
|
||||
err := p.JoinGroup(&intf, &net.UDPAddr{IP: addr.IP})
|
||||
err := p.JoinGroup(&intf, &net.UDPAddr{IP: net.ParseIP(host)})
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
@@ -91,15 +91,12 @@ func newServerUDPListener(
|
||||
streamType StreamType) (*serverUDPListener, error) {
|
||||
var pc *net.UDPConn
|
||||
if multicast {
|
||||
addr, err := net.ResolveUDPAddr("udp4", address)
|
||||
host, port, err := net.SplitHostPort(address)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
tmp, err := s.ListenPacket("udp4", (&net.UDPAddr{
|
||||
IP: net.ParseIP("224.0.0.0"),
|
||||
Port: addr.Port,
|
||||
}).String())
|
||||
tmp, err := s.ListenPacket("udp4", "224.0.0.0:"+port)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
@@ -117,7 +114,7 @@ func newServerUDPListener(
|
||||
}
|
||||
|
||||
for _, intf := range intfs {
|
||||
err := p.JoinGroup(&intf, &net.UDPAddr{IP: addr.IP})
|
||||
err := p.JoinGroup(&intf, &net.UDPAddr{IP: net.ParseIP(host)})
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
Reference in New Issue
Block a user