本文整理汇总了C++中ContactRef::getExtIP方法的典型用法代码示例。如果您正苦于以下问题:C++ ContactRef::getExtIP方法的具体用法?C++ ContactRef::getExtIP怎么用?C++ ContactRef::getExtIP使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类ContactRef
的用法示例。
在下文中一共展示了ContactRef::getExtIP方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: ConfirmUIN
void FileTransferClient::ConfirmUIN()
{
if ( m_contact_list->exists(m_remote_uin) )
{
ContactRef c = (*m_contact_list)[ m_remote_uin ];
if ( (c->getExtIP() == m_local_ext_ip && c->getLanIP() == getIP() )
/* They are behind the same masquerading box,
* and the Lan IP matches
*/
|| c->getExtIP() == getIP())
{
m_contact = c;
}
else
{
// spoofing attempt most likely
ostringstream ostr;
ostr << "Refusing direct connection from someone that claims to be UIN "
<< m_remote_uin << " since their IP " << IPtoString( getIP() ) << " != " << IPtoString( c->getExtIP() );
throw DisconnectedException( ostr.str() );
}
}
else
{
// don't accept direct connections from contacts not on contact list
throw DisconnectedException("Refusing direct connection to contact not on contact list");
}
}