예제 #1
0
 /// <summary>Returns a hash value for an IP address.</summary>
 /// <returns>An integer hash value.</returns>
 /// <PermissionSet>
 ///   <IPermission class="System.Security.Permissions.FileIOPermission, mscorlib, Version=2.0.3600.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" version="1" Unrestricted="true" />
 /// </PermissionSet>
 public override int GetHashCode()
 {
     if (this.m_Family == System.Net.Sockets.AddressFamily.InterNetwork)
     {
         return((int)this.m_Address);
     }
     return(IPAddress.Hash(((int)this.m_Numbers[0] << 16) + (int)this.m_Numbers[1], ((int)this.m_Numbers[2] << 16) + (int)this.m_Numbers[3], ((int)this.m_Numbers[4] << 16) + (int)this.m_Numbers[5], ((int)this.m_Numbers[6] << 16) + (int)this.m_Numbers[7]));
 }