Seastar
High performance C++ framework for concurrent servers
Public Member Functions | Public Attributes | List of all members
seastar::socket_address Class Reference

Public Member Functions

 socket_address (const sockaddr_in &sa) noexcept
 
 socket_address (const sockaddr_in6 &sa) noexcept
 
 socket_address (uint16_t) noexcept
 
 socket_address (ipv4_addr) noexcept
 
 socket_address (const ipv6_addr &) noexcept
 
 socket_address (const ipv6_addr &, uint32_t scope) noexcept
 
 socket_address (const net::inet_address &, uint16_t p=0) noexcept
 
 socket_address (const unix_domain_addr &) noexcept
 
 socket_address () noexcept
 
::sockaddr & as_posix_sockaddr () noexcept
 
::sockaddr_in & as_posix_sockaddr_in () noexcept
 
::sockaddr_in6 & as_posix_sockaddr_in6 () noexcept
 
const ::sockaddr & as_posix_sockaddr () const noexcept
 
const ::sockaddr_in & as_posix_sockaddr_in () const noexcept
 
const ::sockaddr_in6 & as_posix_sockaddr_in6 () const noexcept
 
 socket_address (uint32_t, uint16_t p=0) noexcept
 
socklen_t length () const noexcept
 
bool is_af_unix () const noexcept
 
bool is_unspecified () const noexcept
 
sa_family_t family () const noexcept
 
net::inet_address addr () const noexcept
 
::in_port_t port () const noexcept
 
bool is_wildcard () const noexcept
 
bool operator== (const socket_address &) const noexcept
 
bool operator!= (const socket_address &a) const noexcept
 

Public Attributes

socklen_t addr_length
 
union {
::sockaddr_storage sas
 
::sockaddr sa
 
::sockaddr_in in
 
::sockaddr_in6 in6
 
::sockaddr_un un
 
u
 !< actual size of the relevant 'u' member
 

Constructor & Destructor Documentation

◆ socket_address()

seastar::socket_address::socket_address ( )
noexcept

creates an uninitialized socket_address. this can be written into, or used as "unspecified" for such addresses as bind(addr) or local address in socket::connect (i.e. system picks)


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