Luanti 5.16.0-dev
Loading...
Searching...
No Matches
Address Class Reference

#include <address.h>

Public Member Functions

 Address ()
 Address (u32 address, u16 port)
 Address (u8 a, u8 b, u8 c, u8 d, u16 port)
 Address (const IPv6AddressBytes *ipv6_bytes, u16 port)
bool operator== (const Address &address) const
bool operator!= (const Address &address) const
int getFamily () const
bool isValid () const
bool isIPv6 () const
struct in_addr getAddress () const
struct in6_addr getAddress6 () const
u16 getPort () const
void print (std::ostream &s) const
std::string serializeString () const
bool isAny () const
bool isLocalhost () const
void Resolve (const char *name, Address *fallback=nullptr)
void setAddress (u32 address)
void setAddress (u8 a, u8 b, u8 c, u8 d)
void setAddress (const IPv6AddressBytes *ipv6_bytes)
void setPort (u16 port)

Private Attributes

unsigned short m_addr_family = 0
union { 
   struct in_addr   ipv4 
   struct in6_addr   ipv6 
m_address
u16 m_port = 0

Constructor & Destructor Documentation

◆ Address() [1/4]

Address::Address ( )

References m_address.

Referenced by operator!=(), operator==(), and Resolve().

Here is the caller graph for this function:

◆ Address() [2/4]

Address::Address ( u32 address,
u16 port )

References m_address, setAddress(), and setPort().

Here is the call graph for this function:

◆ Address() [3/4]

Address::Address ( u8 a,
u8 b,
u8 c,
u8 d,
u16 port )

References m_address, setAddress(), and setPort().

Here is the call graph for this function:

◆ Address() [4/4]

Address::Address ( const IPv6AddressBytes * ipv6_bytes,
u16 port )

References m_address, setAddress(), and setPort().

Here is the call graph for this function:

Member Function Documentation

◆ getAddress()

struct in_addr Address::getAddress ( ) const
inline

References getAddress(), and m_address.

Referenced by UDPSocket::Bind(), getAddress(), UDPSocket::Send(), and TestSocket::testIPv4Socket().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ getAddress6()

struct in6_addr Address::getAddress6 ( ) const
inline

References getAddress6(), and m_address.

Referenced by UDPSocket::Bind(), getAddress6(), UDPSocket::Send(), and TestSocket::testIPv6Socket().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ getFamily()

int Address::getFamily ( ) const
inline

References m_addr_family.

Referenced by UDPSocket::Bind(), ModApiServer::l_get_player_information(), UDPSocket::Send(), TestAddress::testBasic(), and TestAddress::testResolve().

Here is the caller graph for this function:

◆ getPort()

u16 Address::getPort ( ) const
inline

References m_port.

Referenced by UDPSocket::Bind(), Game::connectToServer(), ModApiClient::l_get_server_info(), and UDPSocket::Send().

Here is the caller graph for this function:

◆ isAny()

bool Address::isAny ( ) const

References m_addr_family, and m_address.

Referenced by Game::connectToServer(), TestAddress::testBasic(), and TestAddress::testResolve().

Here is the caller graph for this function:

◆ isIPv6()

bool Address::isIPv6 ( ) const
inline

References m_addr_family.

Referenced by con::ConnectionSendThread::connect(), Game::connectToServer(), Game::createServer(), run_dedicated_server(), TestConnection::testConnectSendReceive(), and TestSocket::testIPv4Socket().

Here is the caller graph for this function:

◆ isLocalhost()

bool Address::isLocalhost ( ) const

References m_addr_family, and m_address.

Referenced by TestAddress::testIsLocalhost(), and TestAddress::testResolve().

Here is the caller graph for this function:

◆ isValid()

bool Address::isValid ( ) const
inline

References m_addr_family.

Referenced by Game::connectToServer(), TestAddress::testBasic(), and TestAddress::testResolve().

Here is the caller graph for this function:

◆ operator!=()

bool Address::operator!= ( const Address & address) const
inline

References Address().

Here is the call graph for this function:

◆ operator==()

bool Address::operator== ( const Address & address) const

References Address(), ipv4, ipv6, m_addr_family, m_address, and m_port.

Here is the call graph for this function:

◆ print()

void Address::print ( std::ostream & s) const

References m_addr_family, m_port, and serializeString().

Referenced by con::ConnectionSendThread::connect(), and Client::handleCommand_AuthAccept().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ Resolve()

void Address::Resolve ( const char * name,
Address * fallback = nullptr )

References Address(), g_settings, m_addr_family, and setAddress().

Referenced by Game::connectToServer(), Game::createServer(), run_dedicated_server(), TestConnection::testConnectSendReceive(), TestSocket::testIPv4Socket(), and TestAddress::testResolve().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ serializeString()

◆ setAddress() [1/3]

void Address::setAddress ( const IPv6AddressBytes * ipv6_bytes)

◆ setAddress() [2/3]

void Address::setAddress ( u32 address)

References m_addr_family, and m_address.

Referenced by Address(), Address(), Address(), con::ConnectionSendThread::connect(), Game::connectToServer(), Game::createServer(), Resolve(), run_dedicated_server(), and setAddress().

Here is the caller graph for this function:

◆ setAddress() [3/3]

void Address::setAddress ( u8 a,
u8 b,
u8 c,
u8 d )

References setAddress().

Here is the call graph for this function:

◆ setPort()

void Address::setPort ( u16 port)

References m_port.

Referenced by Address(), Address(), Address(), and Game::connectToServer().

Here is the caller graph for this function:

Member Data Documentation

◆ ipv4

struct in_addr Address::ipv4

Referenced by operator==().

◆ ipv6

struct in6_addr Address::ipv6

Referenced by operator==().

◆ m_addr_family

unsigned short Address::m_addr_family = 0
private

◆ [union]

◆ m_port

u16 Address::m_port = 0
private

Referenced by getPort(), operator==(), print(), and setPort().


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