19 #include <sys/types.h> 55 if (allowNameLookup) {
65 bool allowNameLookup =
false) {
69 if (allowNameLookup) {
115 addr.external_ =
false;
287 static int getPortFrom(
const struct sockaddr* address);
296 const struct sockaddr* address,
297 const char* defaultResult =
nullptr);
362 void setFromSockaddr(
const struct sockaddr* address, socklen_t addrlen);
386 void setFromSockaddr(
const struct sockaddr_un* address, socklen_t addrlen);
523 return !(*
this == other);
560 return socklen_t(len - offsetof(
struct sockaddr_un, sun_path));
564 addr =
new struct sockaddr_un;
565 addr->sun_family = AF_UNIX;
569 addr =
new struct sockaddr_un;
571 memcpy(addr, other.
addr,
size_t(len));
575 memcpy(addr, other.
addr,
size_t(len));
583 struct addrinfo*
getAddrInfo(
const char* host,
const char* port,
int flags);
590 void getIpString(
char* buf,
size_t buflen,
int flags)
const;
void setFromLocalIpPort(const char *addressAndPort)
bool operator!=(const SocketAddress &other) const
void setFromPath(StringPiece path)
void setFromIpAddrPort(const IPAddress &ip, uint16_t port)
void setFromPeerAddress(int socket)
bool prefixMatch(const SocketAddress &other, unsigned prefixLength) const
void init(const ExternalUnixAddr &other)
void setFromHostPort(const char *host, uint16_t port)
void setFromLocalPort(uint16_t port)
SocketAddress & operator=(const SocketAddress &addr)
void setFromIpPort(const std::string &addressAndPort)
bool operator==(const SocketAddress &other) const
std::string getFullyQualified() const
bool isIPv4Mapped() const
SocketAddress(const char *host, uint16_t port, bool allowNameLookup=false)
SocketAddress & operator=(SocketAddress &&addr)
void setFromLocalIpPort(const std::string &addressAndPort)
socklen_t getActualSize() const
void updateUnixAddressLength(socklen_t addrlen)
void setFromSockaddr(const struct sockaddr *address)
void copy(const ExternalUnixAddr &other)
std::string getPath() const
void setFromPath(const char *path, size_t length)
void setFromLocalPort(const std::string &port)
SocketAddress(const SocketAddress &addr)
—— Concurrent Priority Queue Implementation ——
std::string describe() const
requires E e noexcept(noexcept(s.error(std::move(e))))
void setFromAddrInfo(const struct addrinfo *results)
bool operator<(const SocketAddress &other) const
void setPort(uint16_t port)
struct addrinfo * getAddrInfo(const char *host, uint16_t port, int flags)
bool isFamilyInet() const
static int getPortFrom(const struct sockaddr *address)
sa_family_t getFamily() const
void setFromHostPort(const std::string &hostAndPort)
std::string getIpString(int flags) const
bool isInitialized() const
size_t hash_value(const IPAddress &addr)
void setFromLocalAddr(const struct addrinfo *results)
const folly::IPAddress & getIPAddress() const
NetworkSocket socket(int af, int type, int protocol)
socklen_t getAddress(sockaddr_storage *addr) const
size_t operator()(const folly::SocketAddress &addr) const
void setFromIpPort(const char *ip, uint16_t port)
union folly::SocketAddress::AddrStorage storage_
void setFromLocalAddress(int socket)
std::string getHostStr() const
bool isPrivateAddress() const
void setFromSocket(NetworkSocket socket, int(*fn)(NetworkSocket, struct sockaddr *, socklen_t *))
static const char * getFamilyNameFrom(const struct sockaddr *address, const char *defaultResult=nullptr)
socklen_t pathLength() const
SocketAddress(const std::string &host, uint16_t port, bool allowNameLookup=false)
void swap(SwapTrackingAlloc< T > &, SwapTrackingAlloc< T > &)
static SocketAddress makeFromPath(StringPiece path)
SocketAddress(SocketAddress &&addr) noexcept
void setFromHostPort(const std::string &host, uint16_t port)
ThreadPoolListHook * addr
struct sockaddr_un * addr
bool isLoopbackAddress() const
SocketAddress(const IPAddress &ipAddr, uint16_t port)
std::string getAddressStr() const
void setFromIpPort(const std::string &ip, uint16_t port)
std::ostream & operator<<(std::ostream &out, dynamic const &d)