30 inline bool IsInNetwork(boost::asio::ip::address_v4
const& networkAddress, boost::asio::ip::address_v4
const& mask, boost::asio::ip::address_v4
const& clientAddress)
32 boost::asio::ip::network_v4 network = boost::asio::ip::make_network_v4(networkAddress, mask);
33 boost::asio::ip::address_v4_range hosts = network.hosts();
34 return hosts.find(clientAddress) != hosts.end();
37 inline boost::asio::ip::address_v4
GetDefaultNetmaskV4(boost::asio::ip::address_v4
const& networkAddress)
40 return boost::asio::ip::address_v4(0xFF000000);
42 return boost::asio::ip::address_v4(0xFFFF0000);
44 return boost::asio::ip::address_v4(0xFFFFFF00);
45 return boost::asio::ip::address_v4(0xFFFFFFFF);
48 inline bool IsInNetwork(boost::asio::ip::address_v6
const& networkAddress,
uint16 prefixLength, boost::asio::ip::address_v6
const& clientAddress)
50 boost::asio::ip::network_v6 network = boost::asio::ip::make_network_v6(networkAddress, prefixLength);
51 boost::asio::ip::address_v6_range hosts = network.hosts();
52 return hosts.find(clientAddress) != hosts.end();