@ -12,7 +12,7 @@ namespace MediaBrowser.Common.Net
event EventHandler NetworkChanged ;
event EventHandler NetworkChanged ;
/// <summary>
/// <summary>
/// Contain s a function to return the list of user defined LAN addresses
/// Gets or set s a function to return the list of user defined LAN addresses.
/// </summary>
/// </summary>
Func < string [ ] > LocalSubnetsFn { get ; set ; }
Func < string [ ] > LocalSubnetsFn { get ; set ; }
@ -56,42 +56,42 @@ namespace MediaBrowser.Common.Net
bool IsInLocalNetwork ( string endpoint ) ;
bool IsInLocalNetwork ( string endpoint ) ;
/// <summary>
/// <summary>
/// Investigates an caches a list of interface addresses, excluding local link and LAN excluded addresses
/// Investigates an caches a list of interface addresses, excluding local link and LAN excluded addresses .
/// </summary>
/// </summary>
/// <returns>The list of ipaddresses </returns>
/// <returns>The list of ipaddresses . </returns>
IPAddress [ ] GetLocalIpAddresses ( ) ;
IPAddress [ ] GetLocalIpAddresses ( ) ;
/// <summary>
/// <summary>
/// Checks if the given address falls within the ranges given in [subnets]. The addresses in subnets can be hosts or subnets in the CIDR format.
/// Checks if the given address falls within the ranges given in [subnets]. The addresses in subnets can be hosts or subnets in the CIDR format.
/// </summary>
/// </summary>
/// <param name="addressString">The address to check </param>
/// <param name="addressString">The address to check . </param>
/// <param name="subnets">If true, check against addresses in the LAN settings surrounded by brackets ([]) </param>
/// <param name="subnets">If true, check against addresses in the LAN settings surrounded by brackets ([]) . </param>
/// <returns><c>true</c>if the address is in at least one of the given subnets, <c>false</c> otherwise.</returns>
/// <returns><c>true</c>if the address is in at least one of the given subnets, <c>false</c> otherwise.</returns>
bool IsAddressInSubnets ( string addressString , string [ ] subnets ) ;
bool IsAddressInSubnets ( string addressString , string [ ] subnets ) ;
/// <summary>
/// <summary>
/// Returns true if address is in the LAN list in the config file
/// Returns true if address is in the LAN list in the config file .
/// </summary>
/// </summary>
/// <param name="address">The address to check </param>
/// <param name="address">The address to check . </param>
/// <param name="excludeInterfaces">If true, check against addresses in the LAN settings which have [] arroud and return true if it matches the address give in address </param>
/// <param name="excludeInterfaces">If true, check against addresses in the LAN settings which have [] arroud and return true if it matches the address give in address . </param>
/// <param name="excludeRFC">If true, returns false if address is in the 127.x.x.x or 169.128.x.x range </param>
/// <param name="excludeRFC">If true, returns false if address is in the 127.x.x.x or 169.128.x.x range . </param>
/// <returns><c>false</c>if the address isn't in the LAN list, <c>true</c> if the address has been defined as a LAN address </returns>
/// <returns><c>false</c>if the address isn't in the LAN list, <c>true</c> if the address has been defined as a LAN address . </returns>
bool IsAddressInSubnets ( IPAddress address , bool excludeInterfaces , bool excludeRFC ) ;
bool IsAddressInSubnets ( IPAddress address , bool excludeInterfaces , bool excludeRFC ) ;
/// <summary>
/// <summary>
/// Checks if address is in the LAN list in the config file
/// Checks if address is in the LAN list in the config file .
/// </summary>
/// </summary>
/// <param name="address1">Source address to check </param>
/// <param name="address1">Source address to check . </param>
/// <param name="address2">Destination address to check against </param>
/// <param name="address2">Destination address to check against . </param>
/// <param name="subnetMask">Destination subnet to check against </param>
/// <param name="subnetMask">Destination subnet to check against . </param>
/// <returns><c>true/false</c>depending on whether address1 is in the same subnet as IPAddress2 with subnetMas </returns>
/// <returns><c>true/false</c>depending on whether address1 is in the same subnet as IPAddress2 with subnetMas k. </returns>
bool IsInSameSubnet ( IPAddress address1 , IPAddress address2 , IPAddress subnetMask ) ;
bool IsInSameSubnet ( IPAddress address1 , IPAddress address2 , IPAddress subnetMask ) ;
/// <summary>
/// <summary>
/// Returns the subnet mask of an interface with the given address
/// Returns the subnet mask of an interface with the given address .
/// </summary>
/// </summary>
/// <param name="address">The address to check </param>
/// <param name="address">The address to check . </param>
/// <returns>Returns the subnet mask of an interface with the given address, or null if an interface match cannot be found </returns>
/// <returns>Returns the subnet mask of an interface with the given address, or null if an interface match cannot be found . </returns>
IPAddress GetLocalIpSubnetMask ( IPAddress address ) ;
IPAddress GetLocalIpSubnetMask ( IPAddress address ) ;
}
}
}
}