private List <ISocket> CreateSocketAndListenForResponsesAsync() { var sockets = new List <ISocket>(); sockets.Add(_SocketFactory.CreateSsdpUdpSocket(IPAddress.Any, _LocalPort)); if (_enableMultiSocketBinding) { foreach (var address in _networkManager.GetLocalIpAddresses()) { if (address.AddressFamily == AddressFamily.InterNetworkV6) { // Not support IPv6 right now continue; } try { sockets.Add(_SocketFactory.CreateSsdpUdpSocket(address, _LocalPort)); } catch (Exception ex) { _logger.LogError(ex, "Error in CreateSsdpUdpSocket. IPAddress: {0}", address); } } } foreach (var socket in sockets) { _ = ListenToSocketInternal(socket); } return(sockets); }
private List <ISocket> CreateSocketAndListenForResponsesAsync() { var sockets = new List <ISocket>(); sockets.Add(_SocketFactory.CreateSsdpUdpSocket(IpAddressInfo.Any, _LocalPort)); if (_enableMultiSocketBinding) { foreach (var address in _networkManager.GetLocalIpAddresses().ToList()) { try { sockets.Add(_SocketFactory.CreateSsdpUdpSocket(address, _LocalPort)); } catch (Exception ex) { _logger.ErrorException("Error in CreateSsdpUdpSocket. IPAddress: {0}", ex, address); } } } foreach (var socket in sockets) { ListenToSocket(socket); } return(sockets); }