From 42498194d9a4069b8cdeb9446f2714f74e3169de Mon Sep 17 00:00:00 2001 From: Shadowghost Date: Thu, 16 Feb 2023 18:15:12 +0100 Subject: Replace ISocket and UdpSocket, fix DLNA and SSDP binding and discovery --- MediaBrowser.Common/Net/INetworkManager.cs | 12 +++-- MediaBrowser.Common/Net/IPData.cs | 75 ------------------------------ 2 files changed, 7 insertions(+), 80 deletions(-) delete mode 100644 MediaBrowser.Common/Net/IPData.cs (limited to 'MediaBrowser.Common/Net') diff --git a/MediaBrowser.Common/Net/INetworkManager.cs b/MediaBrowser.Common/Net/INetworkManager.cs index 5721b19ca2..68974f738d 100644 --- a/MediaBrowser.Common/Net/INetworkManager.cs +++ b/MediaBrowser.Common/Net/INetworkManager.cs @@ -2,6 +2,7 @@ using System; using System.Collections.Generic; using System.Net; using System.Net.NetworkInformation; +using MediaBrowser.Model.Net; using Microsoft.AspNetCore.Http; namespace MediaBrowser.Common.Net @@ -70,27 +71,28 @@ namespace MediaBrowser.Common.Net /// Source of the request. /// Optional port returned, if it's part of an override. /// IP address to use, or loopback address if all else fails. - string GetBindInterface(HttpRequest source, out int? port); + string GetBindAddress(HttpRequest source, out int? port); /// /// Retrieves the bind address to use in system URLs. (Server Discovery, PlayTo, LiveTV, SystemInfo) /// If no bind addresses are specified, an internal interface address is selected. - /// (See . + /// (See . /// /// IP address of the request. /// Optional port returned, if it's part of an override. + /// Optional boolean denoting if published server overrides should be ignored. Defaults to false. /// IP address to use, or loopback address if all else fails. - string GetBindAddress(IPAddress source, out int? port); + string GetBindAddress(IPAddress source, out int? port, bool skipOverrides = false); /// /// Retrieves the bind address to use in system URLs. (Server Discovery, PlayTo, LiveTV, SystemInfo) /// If no bind addresses are specified, an internal interface address is selected. - /// (See . + /// (See . /// /// Source of the request. /// Optional port returned, if it's part of an override. /// IP address to use, or loopback address if all else fails. - string GetBindInterface(string source, out int? port); + string GetBindAddress(string source, out int? port); /// /// Get a list of all the MAC addresses associated with active interfaces. diff --git a/MediaBrowser.Common/Net/IPData.cs b/MediaBrowser.Common/Net/IPData.cs deleted file mode 100644 index 05842632c8..0000000000 --- a/MediaBrowser.Common/Net/IPData.cs +++ /dev/null @@ -1,75 +0,0 @@ -using System.Net; -using System.Net.Sockets; -using Microsoft.AspNetCore.HttpOverrides; - -namespace MediaBrowser.Common.Net -{ - /// - /// Base network object class. - /// - public class IPData - { - /// - /// Initializes a new instance of the class. - /// - /// The . - /// The . - /// The interface name. - public IPData(IPAddress address, IPNetwork? subnet, string name) - { - Address = address; - Subnet = subnet ?? (address.AddressFamily == AddressFamily.InterNetwork ? new IPNetwork(address, 32) : new IPNetwork(address, 128)); - Name = name; - } - - /// - /// Initializes a new instance of the class. - /// - /// The . - /// The . - public IPData(IPAddress address, IPNetwork? subnet) - : this(address, subnet, string.Empty) - { - } - - /// - /// Gets or sets the object's IP address. - /// - public IPAddress Address { get; set; } - - /// - /// Gets or sets the object's IP address. - /// - public IPNetwork Subnet { get; set; } - - /// - /// Gets or sets the interface index. - /// - public int Index { get; set; } - - /// - /// Gets or sets the interface name. - /// - public string Name { get; set; } - - /// - /// Gets the AddressFamily of the object. - /// - public AddressFamily AddressFamily - { - get - { - if (Address.Equals(IPAddress.None)) - { - return Subnet.Prefix.AddressFamily.Equals(IPAddress.None) - ? AddressFamily.Unspecified - : Subnet.Prefix.AddressFamily; - } - else - { - return Address.AddressFamily; - } - } - } - } -} -- cgit v1.2.3