SNode.C
Loading...
Searching...
No Matches
net::SocketAddress< SockAddrT > Class Template Reference

#include <SocketAddress.h>

Inheritance diagram for net::SocketAddress< SockAddrT >:
Collaboration diagram for net::SocketAddress< SockAddrT >:

Public Types

using SockAddr = SockAddrT
 
using SockLen = socklen_t
 

Public Member Functions

 SocketAddress (sa_family_t af, SockLen sockAddrLen=sizeof(SockAddr))
 
 SocketAddress (const SocketAddress &socketAddress)
 
 SocketAddress (const SockAddr &sockAddr, SockLen sockAddrLen)
 
SocketAddressoperator= (const SocketAddress &socketAddress)
 
const sockaddr & getSockAddr ()
 
const SockLengetSockAddrLen () const
 
sa_family_t getAddressFamily () const
 
- Public Member Functions inherited from core::socket::SocketAddress
virtual ~SocketAddress ()
 
virtual bool useNext ()
 
virtual std::string toString (bool expanded=true) const =0
 

Protected Attributes

SockAddr sockAddr {}
 
SockLen sockAddrLen = 0
 

Detailed Description

template<typename SockAddrT>
class net::SocketAddress< SockAddrT >

Definition at line 57 of file SocketAddress.h.

Member Typedef Documentation

◆ SockAddr

template<typename SockAddrT >
using net::SocketAddress< SockAddrT >::SockAddr = SockAddrT

Definition at line 59 of file SocketAddress.h.

◆ SockLen

template<typename SockAddrT >
using net::SocketAddress< SockAddrT >::SockLen = socklen_t

Definition at line 60 of file SocketAddress.h.

Constructor & Destructor Documentation

◆ SocketAddress() [1/3]

template<typename SockAddr >
net::SocketAddress< SockAddr >::SocketAddress ( sa_family_t  af,
SockLen  sockAddrLen = sizeof(SockAddr) 
)
explicit

Definition at line 53 of file SocketAddress.hpp.

55 std::memset(&sockAddr, 0, sizeof(sockAddr));
56 reinterpret_cast<sockaddr*>(&sockAddr)->sa_family = af;
57 }

References net::SocketAddress< SockAddrT >::sockAddr, and net::SocketAddress< SockAddrT >::sockAddrLen.

Referenced by net::in::SocketAddress::SocketAddress(), net::in6::SocketAddress::SocketAddress(), net::l2::SocketAddress::SocketAddress(), net::rc::SocketAddress::SocketAddress(), and net::un::SocketAddress::SocketAddress().

Here is the caller graph for this function:

◆ SocketAddress() [2/3]

template<typename SockAddr >
net::SocketAddress< SockAddr >::SocketAddress ( const SocketAddress< SockAddrT > &  socketAddress)

Definition at line 60 of file SocketAddress.hpp.

61 : sockAddr(socketAddress.sockAddr)
62 , sockAddrLen(socketAddress.sockAddrLen) {
63 }

References net::SocketAddress< SockAddrT >::sockAddr.

◆ SocketAddress() [3/3]

template<typename SockAddr >
net::SocketAddress< SockAddr >::SocketAddress ( const SockAddr sockAddr,
SockLen  sockAddrLen 
)

Definition at line 66 of file SocketAddress.hpp.

References net::SocketAddress< SockAddrT >::sockAddr.

Referenced by net::l2::SocketAddress::SocketAddress(), net::rc::SocketAddress::SocketAddress(), net::un::SocketAddress::SocketAddress(), net::in::SocketAddress::SocketAddress(), and net::in6::SocketAddress::SocketAddress().

Here is the caller graph for this function:

Member Function Documentation

◆ getAddressFamily()

template<typename SockAddr >
sa_family_t net::SocketAddress< SockAddr >::getAddressFamily ( ) const

Definition at line 92 of file SocketAddress.hpp.

92 {
93 return reinterpret_cast<const sockaddr*>(&sockAddr)->sa_family;
94 }

References net::SocketAddress< SockAddrT >::sockAddr.

Referenced by net::in::SocketAddress::init(), and net::in6::SocketAddress::init().

Here is the caller graph for this function:

◆ getSockAddr()

template<typename SockAddr >
const sockaddr & net::SocketAddress< SockAddr >::getSockAddr ( )

Definition at line 82 of file SocketAddress.hpp.

82 {
83 return reinterpret_cast<const sockaddr&>(sockAddr);
84 }

References net::SocketAddress< SockAddrT >::sockAddr.

Referenced by net::un::dgram::Socket::sendFd().

Here is the caller graph for this function:

◆ getSockAddrLen()

template<typename SockAddr >
const SocketAddress< SockAddr >::SockLen & net::SocketAddress< SockAddr >::getSockAddrLen ( ) const

Definition at line 87 of file SocketAddress.hpp.

87 {
88 return sockAddrLen;
89 }

References net::SocketAddress< SockAddrT >::sockAddrLen.

Referenced by net::un::dgram::Socket::sendFd().

Here is the caller graph for this function:

◆ operator=()

template<typename SockAddr >
SocketAddress< SockAddr > & net::SocketAddress< SockAddr >::operator= ( const SocketAddress< SockAddrT > &  socketAddress)

Definition at line 72 of file SocketAddress.hpp.

72 {
73 if (this != &socketAddress) {
74 this->sockAddr = socketAddress.sockAddr;
75 this->sockAddrLen = socketAddress.sockAddrLen;
76 }
77
78 return *this;
79 }

Member Data Documentation

◆ sockAddr

◆ sockAddrLen


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