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

Enumeration Type Documentation

Enumerator
LIBSOCKET_TLS 
LIBSOCKET_SSL 

Definition at line 66 of file socket.hh.

67  {
70  } GnuTLSKind;
enum Network::e_gnutls_kind GnuTLSKind
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
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
Enumerator
V4 
V6 

Definition at line 85 of file socket.hh.

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

Function Documentation

Network::NEW_EXCEPTION ( HostnameError  )

exception launched when a hostname is incorrect

Network::NEW_EXCEPTION ( Ipv6SupportError  )

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

Network::NEW_EXCEPTION ( TLSError  )

exception launched when error is received during TLS initialization

Network::NEW_EXCEPTION ( InvalidFile  )

exception launched when a file does not exist

Network::NEW_EXCEPTION ( TLSSupportError  )

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

Network::NEW_EXCEPTION ( InetptonError  )

exception launched when a addr is invalid pour inet_pton

Network::NEW_EXCEPTION ( InetntopError  )

exception launched when the addr is not valid for inet_ntop

Network::NEW_EXCEPTION ( ConnectionClosed  )

exception launched when connection is closed

Network::NEW_EXCEPTION ( NoConnection  )

exception launched when there is no active connection

Network::NEW_EXCEPTION ( Timeout  )

exception launched when there is a timeout

Network::NEW_EXCEPTION ( BindError  )

exception launched when bind libc function return an error

Network::NEW_EXCEPTION ( SocketError  )

exception launched when socket libc function return an error

Network::NEW_EXCEPTION ( ListenError  )

exception launched when listen libc function return an error

Network::NEW_EXCEPTION ( SetsockoptError  )

exception launched when setsockopt libc function return an error

Network::NEW_EXCEPTION ( CloseError  )

exception launched when close libc function return an error

Network::NEW_EXCEPTION ( SelectError  )

exception launched when select libc function return an error

Network::NEW_EXCEPTION ( ConnectError  )

exception launched when connect libc function return an error

Network::NEW_EXCEPTION ( AcceptError  )

exception launched when accept libc function return an error

Network::NEW_EXCEPTION ( GetpeernameError  )

exception launched when getpeername libc function return an error

Network::NEW_EXCEPTION ( WSAStartupError  )

exception launched when WSAStartup windows function return an error

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  }
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  }
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  }