bool 
   LocalIPAddresses::IsLocalPort(const IPAddress &address, int port)
   {
      std::vector<std::pair<IPAddress, int> >::iterator iter = m_vecLocalPorts.begin();
      std::vector<std::pair<IPAddress, int> >::iterator iterEnd = m_vecLocalPorts.end();

      bool loopbackAddress = IsWithinLoopbackRange(address);

      for (; iter != iterEnd; iter++)
      {
         IPAddress usedAddress = (*iter).first;
         unsigned long usedPort = (*iter).second;
       
         if (loopbackAddress)
         {
            if (usedAddress.IsAny() && usedPort == port)
               return true;
         }
         else
         {
            if (usedAddress == address && usedPort == port)
               return true;
         }

      }

      return false;
   }
   bool 
   LocalIPAddresses::IsLocalPort(const IPAddress &address, int port)
   {
      auto iter = local_ports_.begin();
      auto iterEnd = local_ports_.end();

      bool loopbackAddress = IsWithinLoopbackRange(address);

      for (; iter != iterEnd; iter++)
      {
         IPAddress usedAddress = (*iter).first;
         unsigned long usedPort = (*iter).second;
       
         if (loopbackAddress)
         {
            if (usedAddress.IsAny() && usedPort == port)
               return true;
         }
         else
         {
            if (usedAddress == address && usedPort == port)
               return true;
         }

      }

      return false;
   }