mirror of
https://github.com/mfontanini/libtins
synced 2026-01-30 13:34:27 +01:00
Added IPv4Address, IPv6Address and HWAddress<> 'is_multicast' member function.
This commit is contained in:
@@ -45,6 +45,7 @@
|
||||
|
||||
namespace Tins {
|
||||
const IPv6Address loopback_address = "::1";
|
||||
const AddressRange<IPv6Address> multicast_range = IPv6Address("ff00::") / 8;
|
||||
|
||||
IPv6Address::IPv6Address() {
|
||||
std::fill(address, address + address_size, 0);
|
||||
@@ -104,6 +105,10 @@ bool IPv6Address::is_loopback() const {
|
||||
return loopback_address == *this;
|
||||
}
|
||||
|
||||
bool IPv6Address::is_multicast() const {
|
||||
return multicast_range.contains(*this);
|
||||
}
|
||||
|
||||
AddressRange<IPv6Address> operator/(const IPv6Address &addr, int mask) {
|
||||
if(mask > 128)
|
||||
throw std::logic_error("Prefix length cannot exceed 128");
|
||||
|
||||
Reference in New Issue
Block a user