libBsdSockets
C++ Wrapper classes to the BSD Socket API
BsdSockets Namespace Reference

Namespace of the BsdSockets library. More...

Classes

class  InetAddressPimpl
 The private implementation of InetAddress. More...
 
class  LocalAddressPimpl
 The private implementation of LocalAddress. More...
 
class  Address
 Base class for all addresses. More...
 
class  ClientSocket
 Client Socket providing ability to connect to and Address. More...
 
class  InetAddress
 Internet Address Class supporting IPv4 and IPv6 and creatable from hostnames and service names. More...
 
class  LocalAddress
 Local Socket Address (formerly Unix Domain Socket) Address representing a named pipe's name. More...
 
class  LowLevelAddress
 Interface for the low-level address implementation. More...
 
class  LowLevelAddressType
 LowLevelAddress template for the various cast-to-sockaddr implementaitons. More...
 
class  ServerSocket
 Server Socket providing ability to bind, listen and accept connections. More...
 
class  SelectResult
 Result of Socket::select() indicating the result status. More...
 
class  Socket
 BSD Socket base class providing the basic, common functionality between ServerSockets and ClientSockets. More...
 

Typedefs

typedef LowLevelAddressType< struct sockaddr_in > InetLowLevelAddress
 
typedef LowLevelAddressType< struct sockaddr_un > LocalLowLevelAddress
 

Enumerations

enum class  SocketDomain {
  INET4 , INET6 , LOCAL , ROUTE ,
  KEY
}
 
enum class  SocketType {
  STREAM , DATAGRAM , RAW_PROTOCOL , RELIABLY_DELIVERED ,
  SEQUENCED_PACKET
}
 

Functions

int socketDomainToLowLevel (SocketDomain domain)
 
SocketDomain lowLevelToSocketDomain (int lowLevel)
 
int socketTypeToLowLevel (SocketType type)
 

Detailed Description

Namespace of the BsdSockets library.

BSD Sockets Package.

Typedef Documentation

◆ InetLowLevelAddress

Definition at line 65 of file InetAddress.cpp.

◆ LocalLowLevelAddress

Definition at line 28 of file LocalAddress.cpp.

Enumeration Type Documentation

◆ SocketDomain

The low-level domain of a socket or address.

This provides detail to the low-level implementation.

Enumerator
INET4 

Traditional internet address for TCP, UDP, etc.

INET6 

IPv6 internet address TCP, UDP, etc.

LOCAL 

Local/Unix/Pipe socket address

ROUTE 

Internal Routing Protocol

KEY 

Internal Key Management

Definition at line 27 of file AddressInfo.h.

◆ SocketType

The low-level type of the socket.

This provides detail to the low-level implementation.

Enumerator
STREAM 

Stream of messages

DATAGRAM 

Datagram socket

RAW_PROTOCOL 

Raw protocol interface

RELIABLY_DELIVERED 

Reliably-delivered message

SEQUENCED_PACKET 

Sequenced packet stream

Definition at line 54 of file AddressInfo.h.

Function Documentation

◆ lowLevelToSocketDomain()

SocketDomain BsdSockets::lowLevelToSocketDomain ( int  value)

Find the SocketDomain for the low-level value constant

Parameters
valueto find the SocketDomain for
Returns
the SocketDomain for the low-level value constant

Definition at line 44 of file AddressInfoConversions.cpp.

◆ socketDomainToLowLevel()

int BsdSockets::socketDomainToLowLevel ( SocketDomain  domain)

Find the low-level constant for domain

Parameters
domainto get the low-level constant for
Returns
the low-level constant for domain

Definition at line 24 of file AddressInfoConversions.cpp.

◆ socketTypeToLowLevel()

int BsdSockets::socketTypeToLowLevel ( SocketType  type)

Find the low-level constant for type.

Parameters
typeto get the low-level constant for
Returns
the low-level constant for type

Definition at line 65 of file AddressInfoConversions.cpp.