libsocket  1.5
Network Namespace Reference

Network namespace represent all networks connection. More...

Classes

class  Exception
 This class is the top exception class used in libsocket. More...
 
class  LocalSocket
 This class represent a local connection (client and server) More...
 
class  NetSocket
 This class represent an abstract socket connection (udp | tcp server | tcp client) More...
 
class  Socket
 This class represent an abstract socket connection (udp | tcp server | tcp client) More...
 
class  TcpSocket
 This class represent a tcp connection (client and server) More...
 
class  UdpSocket
 This class represent a udp connection (client and server) More...
 

Typedefs

typedef enum Network::e_gnutls_kind GnuTLSKind
 
typedef enum Network::e_pkind PROTO_KIND
 
typedef enum Network::e_kind SOCKET_KIND
 
typedef enum Network::e_version SOCKET_VERSION
 

Enumerations

enum  e_gnutls_kind { LIBSOCKET_TLS, LIBSOCKET_SSL }
 
enum  e_pkind { text, binary }
 
enum  e_kind { TCP, UDP, LOCAL }
 
enum  e_version { V4, V6 }
 

Functions

Socketoperator<< (Socket &s, const std::string &str)
 write a string on current socket More...
 
Socketoperator>> (Socket &s, std::string &str)
 read a string on current socket More...
 
std::ostream & operator<< (std::ostream &stream, Exception &e)
 
 NEW_EXCEPTION (HostnameError)
 exception launched when a hostname is incorrect More...
 
 NEW_EXCEPTION (Ipv6SupportError)
 exception launched when user want ipv6, but lib is not compiled with More...
 
 NEW_EXCEPTION (TLSError)
 exception launched when error is received during TLS initialization More...
 
 NEW_EXCEPTION (InvalidFile)
 exception launched when a file does not exist More...
 
 NEW_EXCEPTION (TLSSupportError)
 exception launched when user want TLS, but lib is not compiled with More...
 
 NEW_EXCEPTION (InetptonError)
 exception launched when a addr is invalid pour inet_pton More...
 
 NEW_EXCEPTION (InetntopError)
 exception launched when the addr is not valid for inet_ntop More...
 
 NEW_EXCEPTION (ConnectionClosed)
 exception launched when connection is closed More...
 
 NEW_EXCEPTION (NoConnection)
 exception launched when there is no active connection More...
 
 NEW_EXCEPTION (Timeout)
 exception launched when there is a timeout More...
 
 NEW_EXCEPTION (BindError)
 exception launched when bind libc function return an error More...
 
 NEW_EXCEPTION (SocketError)
 exception launched when socket libc function return an error More...
 
 NEW_EXCEPTION (ListenError)
 exception launched when listen libc function return an error More...
 
 NEW_EXCEPTION (SetsockoptError)
 exception launched when setsockopt libc function return an error More...
 
 NEW_EXCEPTION (CloseError)
 exception launched when close libc function return an error More...
 
 NEW_EXCEPTION (SelectError)
 exception launched when select libc function return an error More...
 
 NEW_EXCEPTION (ConnectError)
 exception launched when connect libc function return an error More...
 
 NEW_EXCEPTION (AcceptError)
 exception launched when accept libc function return an error More...
 
 NEW_EXCEPTION (GetpeernameError)
 exception launched when getpeername libc function return an error More...
 
 NEW_EXCEPTION (WSAStartupError)
 exception launched when WSAStartup windows function return an error More...
 

Detailed Description

Network namespace represent all networks connection.

Typedef Documentation

◆ GnuTLSKind

◆ PROTO_KIND

◆ SOCKET_KIND

◆ SOCKET_VERSION

Enumeration Type Documentation

◆ e_gnutls_kind

Enumerator
LIBSOCKET_TLS 
LIBSOCKET_SSL 

Definition at line 66 of file socket.hh.

67  {
70  } GnuTLSKind;
enum Network::e_gnutls_kind GnuTLSKind

◆ e_kind

Enumerator
TCP 
UDP 
LOCAL 

Definition at line 78 of file socket.hh.

79  {
80  TCP,
81  UDP,
82  LOCAL
83  } SOCKET_KIND;
enum Network::e_kind SOCKET_KIND

◆ e_pkind

Enumerator
text 
binary 

Definition at line 72 of file socket.hh.

73  {
74  text,
75  binary
76  } PROTO_KIND;
enum Network::e_pkind PROTO_KIND

◆ e_version

Enumerator
V4 
V6 

Definition at line 85 of file socket.hh.

86  {
87  V4,
88  V6
enum Network::e_version SOCKET_VERSION

Function Documentation

◆ NEW_EXCEPTION() [1/20]

Network::NEW_EXCEPTION ( HostnameError  )

exception launched when a hostname is incorrect

◆ NEW_EXCEPTION() [2/20]

Network::NEW_EXCEPTION ( Ipv6SupportError  )

exception launched when user want ipv6, but lib is not compiled with

◆ NEW_EXCEPTION() [3/20]

Network::NEW_EXCEPTION ( TLSError  )

exception launched when error is received during TLS initialization

◆ NEW_EXCEPTION() [4/20]

Network::NEW_EXCEPTION ( InvalidFile  )

exception launched when a file does not exist

◆ NEW_EXCEPTION() [5/20]

Network::NEW_EXCEPTION ( TLSSupportError  )

exception launched when user want TLS, but lib is not compiled with

◆ NEW_EXCEPTION() [6/20]

Network::NEW_EXCEPTION ( InetptonError  )

exception launched when a addr is invalid pour inet_pton

◆ NEW_EXCEPTION() [7/20]

Network::NEW_EXCEPTION ( InetntopError  )

exception launched when the addr is not valid for inet_ntop

◆ NEW_EXCEPTION() [8/20]

Network::NEW_EXCEPTION ( ConnectionClosed  )

exception launched when connection is closed

◆ NEW_EXCEPTION() [9/20]

Network::NEW_EXCEPTION ( NoConnection  )

exception launched when there is no active connection

◆ NEW_EXCEPTION() [10/20]

Network::NEW_EXCEPTION ( Timeout  )

exception launched when there is a timeout

◆ NEW_EXCEPTION() [11/20]

Network::NEW_EXCEPTION ( BindError  )

exception launched when bind libc function return an error

◆ NEW_EXCEPTION() [12/20]

Network::NEW_EXCEPTION ( SocketError  )

exception launched when socket libc function return an error

◆ NEW_EXCEPTION() [13/20]

Network::NEW_EXCEPTION ( ListenError  )

exception launched when listen libc function return an error

◆ NEW_EXCEPTION() [14/20]

Network::NEW_EXCEPTION ( SetsockoptError  )

exception launched when setsockopt libc function return an error

◆ NEW_EXCEPTION() [15/20]

Network::NEW_EXCEPTION ( CloseError  )

exception launched when close libc function return an error

◆ NEW_EXCEPTION() [16/20]

Network::NEW_EXCEPTION ( SelectError  )

exception launched when select libc function return an error

◆ NEW_EXCEPTION() [17/20]

Network::NEW_EXCEPTION ( ConnectError  )

exception launched when connect libc function return an error

◆ NEW_EXCEPTION() [18/20]

Network::NEW_EXCEPTION ( AcceptError  )

exception launched when accept libc function return an error

◆ NEW_EXCEPTION() [19/20]

Network::NEW_EXCEPTION ( GetpeernameError  )

exception launched when getpeername libc function return an error

◆ NEW_EXCEPTION() [20/20]

Network::NEW_EXCEPTION ( WSAStartupError  )

exception launched when WSAStartup windows function return an error

◆ operator<<() [1/2]

std::ostream & Network::operator<< ( std::ostream &  stream,
Exception e 
)

Definition at line 27 of file socketexception.cc.

References Network::Exception::print().

28  {
29  e.print(stream);
30  return (stream);
31  }

◆ operator<<() [2/2]

Socket & Network::operator<< ( Socket s,
const std::string &  str 
)

write a string on current socket

Definition at line 367 of file socket.cc.

References Network::Socket::write().

368  {
369  s.write(str);
370  return s;
371  }

◆ operator>>()

Socket & Network::operator>> ( Socket s,
std::string &  str 
)

read a string on current socket

Definition at line 373 of file socket.cc.

References Network::Socket::read().

374  {
375  str = s.read();
376  return s;
377  }