LLDB mainline
lldb_private::SocketAddress Class Reference

#include <SocketAddress.h>

Classes

union  sockaddr_tag

Public Member Functions

 SocketAddress ()
 SocketAddress (const struct addrinfo *addr_info)
 SocketAddress (const struct sockaddr &s)
 SocketAddress (const struct sockaddr_in &s)
 SocketAddress (const struct sockaddr_in6 &s)
 SocketAddress (const struct sockaddr_storage &s)
 ~SocketAddress ()
const SocketAddressoperator= (const struct addrinfo *addr_info)
const SocketAddressoperator= (const struct sockaddr &s)
const SocketAddressoperator= (const struct sockaddr_in &s)
const SocketAddressoperator= (const struct sockaddr_in6 &s)
const SocketAddressoperator= (const struct sockaddr_storage &s)
bool operator== (const SocketAddress &rhs) const
bool operator!= (const SocketAddress &rhs) const
void Clear ()
socklen_t GetLength () const
sa_family_t GetFamily () const
void SetFamily (sa_family_t family)
std::string GetIPAddress () const
uint16_t GetPort () const
bool SetPort (uint16_t port)
bool getaddrinfo (const char *host, const char *service, int ai_family=PF_UNSPEC, int ai_socktype=0, int ai_protocol=0, int ai_flags=0)
bool SetToLocalhost (sa_family_t family, uint16_t port)
bool SetToAnyAddress (sa_family_t family, uint16_t port)
bool IsValid () const
bool IsAnyAddr () const
bool IsLocalhost () const
struct sockaddr & sockaddr ()
const struct sockaddr & sockaddr () const
struct sockaddr_in & sockaddr_in ()
const struct sockaddr_in & sockaddr_in () const
struct sockaddr_in6 & sockaddr_in6 ()
const struct sockaddr_in6 & sockaddr_in6 () const
struct sockaddr_storage & sockaddr_storage ()
const struct sockaddr_storage & sockaddr_storage () const
 operator struct sockaddr * ()
 operator const struct sockaddr * () const
 operator struct sockaddr_in * ()
 operator const struct sockaddr_in * () const
 operator struct sockaddr_in6 * ()
 operator const struct sockaddr_in6 * () const
 operator const struct sockaddr_storage * () const
 operator struct sockaddr_storage * ()

Static Public Member Functions

static std::vector< SocketAddressGetAddressInfo (const char *hostname, const char *servname, int ai_family, int ai_socktype, int ai_protocol, int ai_flags=0)
static socklen_t GetMaxLength ()

Protected Types

typedef union lldb_private::SocketAddress::sockaddr_tag sockaddr_t

Protected Attributes

sockaddr_t m_socket_addr

Detailed Description

Definition at line 34 of file SocketAddress.h.

Member Typedef Documentation

◆ sockaddr_t

Constructor & Destructor Documentation

◆ SocketAddress() [1/6]

SocketAddress::SocketAddress ( )

◆ SocketAddress() [2/6]

SocketAddress::SocketAddress ( const struct addrinfo * addr_info)

Definition at line 91 of file SocketAddress.cpp.

◆ SocketAddress() [3/6]

SocketAddress::SocketAddress ( const struct sockaddr & s)

Definition at line 77 of file SocketAddress.cpp.

References m_socket_addr, and sockaddr().

◆ SocketAddress() [4/6]

SocketAddress::SocketAddress ( const struct sockaddr_in & s)

Definition at line 79 of file SocketAddress.cpp.

References m_socket_addr, and sockaddr_in().

◆ SocketAddress() [5/6]

SocketAddress::SocketAddress ( const struct sockaddr_in6 & s)

Definition at line 83 of file SocketAddress.cpp.

References m_socket_addr, and sockaddr_in6().

◆ SocketAddress() [6/6]

SocketAddress::SocketAddress ( const struct sockaddr_storage & s)

Definition at line 87 of file SocketAddress.cpp.

References m_socket_addr, and sockaddr_storage().

◆ ~SocketAddress()

SocketAddress::~SocketAddress ( )
default

Member Function Documentation

◆ Clear()

void SocketAddress::Clear ( )

Definition at line 98 of file SocketAddress.cpp.

References m_socket_addr.

Referenced by getaddrinfo(), operator=(), SetToAnyAddress(), SetToLocalhost(), and SocketAddress().

◆ GetAddressInfo()

std::vector< SocketAddress > SocketAddress::GetAddressInfo ( const char * hostname,
const char * servname,
int ai_family,
int ai_socktype,
int ai_protocol,
int ai_flags = 0 )
static

◆ getaddrinfo()

bool SocketAddress::getaddrinfo ( const char * host,
const char * service,
int ai_family = PF_UNSPEC,
int ai_socktype = 0,
int ai_protocol = 0,
int ai_flags = 0 )

Definition at line 210 of file SocketAddress.cpp.

References Clear(), GetAddressInfo(), and IsValid().

Referenced by GetAddressInfo().

◆ GetFamily()

sa_family_t SocketAddress::GetFamily ( ) const

Definition at line 126 of file SocketAddress.cpp.

References m_socket_addr.

Referenced by GetIPAddress(), GetLength(), GetPort(), IsAnyAddr(), IsLocalhost(), operator==(), and SetPort().

◆ GetIPAddress()

std::string SocketAddress::GetIPAddress ( ) const

◆ GetLength()

socklen_t SocketAddress::GetLength ( ) const

◆ GetMaxLength()

◆ GetPort()

uint16_t SocketAddress::GetPort ( ) const

◆ IsAnyAddr()

bool SocketAddress::IsAnyAddr ( ) const

Definition at line 293 of file SocketAddress.cpp.

References GetFamily(), and m_socket_addr.

Referenced by lldb_private::TCPSocket::Accept().

◆ IsLocalhost()

bool SocketAddress::IsLocalhost ( ) const

Definition at line 299 of file SocketAddress.cpp.

References GetFamily(), and m_socket_addr.

Referenced by lldb_private::TCPSocket::Listen().

◆ IsValid()

bool SocketAddress::IsValid ( ) const

Definition at line 102 of file SocketAddress.cpp.

References GetLength().

Referenced by getaddrinfo().

◆ operator const struct sockaddr *()

lldb_private::SocketAddress::operator const struct sockaddr * ( ) const
inline

Definition at line 156 of file SocketAddress.h.

References m_socket_addr, and sockaddr().

◆ operator const struct sockaddr_in *()

lldb_private::SocketAddress::operator const struct sockaddr_in * ( ) const
inline

Definition at line 160 of file SocketAddress.h.

References m_socket_addr, and sockaddr_in().

◆ operator const struct sockaddr_in6 *()

lldb_private::SocketAddress::operator const struct sockaddr_in6 * ( ) const
inline

Definition at line 164 of file SocketAddress.h.

References m_socket_addr, and sockaddr_in6().

◆ operator const struct sockaddr_storage *()

lldb_private::SocketAddress::operator const struct sockaddr_storage * ( ) const
inline

Definition at line 168 of file SocketAddress.h.

References m_socket_addr, and sockaddr_storage().

◆ operator struct sockaddr *()

lldb_private::SocketAddress::operator struct sockaddr * ( )
inline

Definition at line 154 of file SocketAddress.h.

References m_socket_addr, and sockaddr().

◆ operator struct sockaddr_in *()

lldb_private::SocketAddress::operator struct sockaddr_in * ( )
inline

Definition at line 158 of file SocketAddress.h.

References m_socket_addr, and sockaddr_in().

◆ operator struct sockaddr_in6 *()

lldb_private::SocketAddress::operator struct sockaddr_in6 * ( )
inline

Definition at line 162 of file SocketAddress.h.

References m_socket_addr, and sockaddr_in6().

◆ operator struct sockaddr_storage *()

lldb_private::SocketAddress::operator struct sockaddr_storage * ( )
inline

Definition at line 172 of file SocketAddress.h.

References m_socket_addr, and sockaddr_storage().

◆ operator!=()

bool SocketAddress::operator!= ( const SocketAddress & rhs) const

Definition at line 322 of file SocketAddress.cpp.

References SocketAddress().

◆ operator=() [1/5]

const SocketAddress & SocketAddress::operator= ( const struct addrinfo * addr_info)

Definition at line 179 of file SocketAddress.cpp.

References Clear(), m_socket_addr, and SocketAddress().

◆ operator=() [2/5]

const SocketAddress & SocketAddress::operator= ( const struct sockaddr & s)

Definition at line 189 of file SocketAddress.cpp.

References m_socket_addr, sockaddr(), and SocketAddress().

◆ operator=() [3/5]

const SocketAddress & SocketAddress::operator= ( const struct sockaddr_in & s)

Definition at line 194 of file SocketAddress.cpp.

References m_socket_addr, sockaddr_in(), and SocketAddress().

◆ operator=() [4/5]

const SocketAddress & SocketAddress::operator= ( const struct sockaddr_in6 & s)

Definition at line 199 of file SocketAddress.cpp.

References m_socket_addr, sockaddr_in6(), and SocketAddress().

◆ operator=() [5/5]

const SocketAddress & SocketAddress::operator= ( const struct sockaddr_storage & s)

Definition at line 204 of file SocketAddress.cpp.

References m_socket_addr, sockaddr_storage(), and SocketAddress().

◆ operator==()

◆ SetFamily()

void SocketAddress::SetFamily ( sa_family_t family)

Definition at line 130 of file SocketAddress.cpp.

References GetFamilyLength(), and m_socket_addr.

Referenced by SetToAnyAddress(), and SetToLocalhost().

◆ SetPort()

bool SocketAddress::SetPort ( uint16_t port)

◆ SetToAnyAddress()

bool SocketAddress::SetToAnyAddress ( sa_family_t family,
uint16_t port )

◆ SetToLocalhost()

bool SocketAddress::SetToLocalhost ( sa_family_t family,
uint16_t port )

Definition at line 249 of file SocketAddress.cpp.

References Clear(), m_socket_addr, SetFamily(), and SetPort().

Referenced by lldb_private::UDPSocket::CreateConnected().

◆ sockaddr() [1/2]

◆ sockaddr() [2/2]

const struct sockaddr & lldb_private::SocketAddress::sockaddr ( ) const
inline

Definition at line 123 of file SocketAddress.h.

References m_socket_addr, and sockaddr().

◆ sockaddr_in() [1/2]

struct sockaddr_in & lldb_private::SocketAddress::sockaddr_in ( )
inline

◆ sockaddr_in() [2/2]

const struct sockaddr_in & lldb_private::SocketAddress::sockaddr_in ( ) const
inline

Definition at line 129 of file SocketAddress.h.

References m_socket_addr, and sockaddr_in().

◆ sockaddr_in6() [1/2]

struct sockaddr_in6 & lldb_private::SocketAddress::sockaddr_in6 ( )
inline

◆ sockaddr_in6() [2/2]

const struct sockaddr_in6 & lldb_private::SocketAddress::sockaddr_in6 ( ) const
inline

Definition at line 137 of file SocketAddress.h.

References m_socket_addr, and sockaddr_in6().

◆ sockaddr_storage() [1/2]

struct sockaddr_storage & lldb_private::SocketAddress::sockaddr_storage ( )
inline

◆ sockaddr_storage() [2/2]

const struct sockaddr_storage & lldb_private::SocketAddress::sockaddr_storage ( ) const
inline

Definition at line 145 of file SocketAddress.h.

References m_socket_addr, and sockaddr_storage().

Member Data Documentation

◆ m_socket_addr


The documentation for this class was generated from the following files: