Fix MultiUDPMuxDefault panic #1646

This commit is contained in:
Alex X
2025-09-22 18:11:47 +03:00
parent 3b976c6812
commit fd682306e7
+10 -3
View File
@@ -125,13 +125,20 @@ func NewServerAPI(network, address string, filters *Filters) (*webrtc.API, error
networks = append(networks, ice.NetworkType(ntype)) networks = append(networks, ice.NetworkType(ntype))
} }
udpMux, _ = ice.NewMultiUDPMuxFromPort( var err error
if udpMux, err = ice.NewMultiUDPMuxFromPort(
port, port,
ice.UDPMuxFromPortWithInterfaceFilter(interfaceFilter), ice.UDPMuxFromPortWithInterfaceFilter(interfaceFilter),
ice.UDPMuxFromPortWithIPFilter(ipFilter), ice.UDPMuxFromPortWithIPFilter(ipFilter),
ice.UDPMuxFromPortWithNetworks(networks...), ice.UDPMuxFromPortWithNetworks(networks...),
) ); err != nil {
} else if ln, err := net.ListenPacket("udp", address); err == nil { return nil, err
}
} else {
ln, err := net.ListenPacket("udp", address)
if err != nil {
return nil, err
}
udpMux = ice.NewUDPMuxDefault(ice.UDPMuxParams{UDPConn: ln}) udpMux = ice.NewUDPMuxDefault(ice.UDPMuxParams{UDPConn: ln})
} }
s.SetICEUDPMux(udpMux) s.SetICEUDPMux(udpMux)