24 = { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0xff, 0xff, 0xff, 0xff } };
43 IpAddress(
const std::string& ipAddressAsString);
Structure to store both IPv4 and IPv6 addresses and associated functions.
static const ip_addr_t EMPTY_IP_ADDRESS
Define a constant for an empty IP address 0.0.0.0 for IPv4, :: for IPv6.
A struct representing an IP address with associated operations.
bool operator==(const IpAddress &other) const
Equality operator to compare two IpAddress objects.
bool isIpv6() const
Check if the stored IP address is an IPv6 address.
IpAddress operator&(const IpAddress &other) const
Bitwise AND operator to perform a bitwise AND operation on two IpAddress objects.
std::ostream & operator<<(std::ostream &os)
Output stream operator to stream an IpAddress object to an output stream.
bool isIpv4() const
Check if the stored IP address is an IPv4 address.
IpAddress(ip_addr_t ip=EMPTY_IP_ADDRESS)
Constructor to initialize IpAddress with an ip_addr_t value.