code/include/swoc/swoc_ip.h (31 lines of code) (raw):

// SPDX-License-Identifier: Apache-2.0 // Copyright Network Geographics 2014 /** @file IP address and network related classes. */ #pragma once #include <array> #include <climits> #include <netinet/in.h> #include <sys/socket.h> #include <string_view> #include <variant> #include "swoc/swoc_version.h" #include "swoc/TextView.h" #include "swoc/IPEndpoint.h" #include "swoc/IPAddr.h" #include "swoc/IPSrv.h" #include "swoc/IPRange.h" namespace swoc { inline namespace SWOC_VERSION_NS { // --- Cross type address operators inline bool operator==(IPAddr const &lhs, IPEndpoint const &rhs) { return lhs == &rhs.sa; } /// Equality. inline bool operator==(IPEndpoint const &lhs, IPAddr const &rhs) { return &lhs.sa == rhs; } /// Inequality. inline bool operator!=(IPAddr const &lhs, IPEndpoint const &rhs) { return !(lhs == &rhs.sa); } /// Inequality. inline bool operator!=(IPEndpoint const &lhs, IPAddr const &rhs) { return !(rhs == &lhs.sa); } }} // namespace swoc::SWOC_VERSION_NS