2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
42#include "net/SocketAddress.h"
44#ifndef DOXYGEN_SHOULD_SKIP_THIS
52 template <
typename SockAddr>
56 reinterpret_cast<sockaddr*>(&
sockAddr)->sa_family = af;
59 template <
typename SockAddr>
65 template <
typename SockAddr>
71 template <
typename SockAddr>
73 if (
this != &socketAddress) {
81 template <
typename SockAddr>
83 return reinterpret_cast<
const sockaddr&>(
sockAddr);
86 template <
typename SockAddr>
91 template <
typename SockAddr>
93 return reinterpret_cast<
const sockaddr*>(&
sockAddr)->sa_family;
SocketAddress(const SockAddr &sockAddr, SockLen sockAddrLen)
const SockLen & getSockAddrLen() const
SocketAddress & operator=(const SocketAddress &socketAddress)
SocketAddress(const SocketAddress &socketAddress)
SocketAddress(sa_family_t af, SockLen sockAddrLen=sizeof(SockAddr))
const sockaddr & getSockAddr()
sa_family_t getAddressFamily() const
std::string getCanonName()
sockaddr_in getSockAddr()
SocketAddress & setPort(uint16_t port)
SocketAddress(const std::string &ipOrHostname, uint16_t port)
SocketAddress & setHost(const std::string &ipOrHostname)
SocketAddress(uint16_t port)
SocketAddress(const std::string &ipOrHostname)
std::string getHost() const
std::string getCanonName() const
std::shared_ptr< SocketAddrInfo > socketAddrInfo
SocketAddress(const SockAddr &sockAddr, SockLen sockAddrLen, bool numeric=true)
std::string toString(bool expanded=true) const override
void init(const Hints &hints={.aiFlags=0,.aiSockType=0,.aiProtocol=0})