wibble 1.1
Public Member Functions | Public Attributes | Protected Member Functions | Static Protected Member Functions | Static Protected Attributes | List of all members
wibble::net::TCPServer Struct Referenceabstract

#include <server.h>

Inheritance diagram for wibble::net::TCPServer:
Inheritance graph
[legend]
Collaboration diagram for wibble::net::TCPServer:
Collaboration graph
[legend]

Public Member Functions

 TCPServer ()
 
virtual ~TCPServer ()
 
int accept_loop ()
 Loop accepting connections on the socket, until interrupted by a signal in stop_signals.
 
virtual void handle_client (int sock, const std::string &peer_hostname, const std::string &peer_hostaddr, const std::string &peer_port)=0
 
- Public Member Functions inherited from wibble::net::Server
 Server ()
 
 ~Server ()
 
void bind (const char *port, const char *host=NULL)
 
void listen (int backlog=16)
 
void set_sock_cloexec ()
 

Public Attributes

std::vector< intstop_signals
 
- Public Attributes inherited from wibble::net::Server
std::string host
 
std::string port
 
int socktype
 
int sock
 
struct sigactionold_signal_actions
 
struct sigactionsignal_actions
 

Protected Member Functions

void signal_setup ()
 
void signal_install ()
 
void signal_uninstall ()
 

Static Protected Member Functions

static void signal_handler (int sig)
 

Static Protected Attributes

static int last_signal
 

Constructor & Destructor Documentation

◆ TCPServer()

wibble::net::TCPServer::TCPServer ( )

◆ ~TCPServer()

virtual wibble::net::TCPServer::~TCPServer ( )
virtual

Member Function Documentation

◆ accept_loop()

int wibble::net::TCPServer::accept_loop ( )

Loop accepting connections on the socket, until interrupted by a signal in stop_signals.

Returns
the signal number that stopped the loop

◆ handle_client()

virtual void wibble::net::TCPServer::handle_client ( int  sock,
const std::string &  peer_hostname,
const std::string &  peer_hostaddr,
const std::string &  peer_port 
)
pure virtual

◆ signal_handler()

static void wibble::net::TCPServer::signal_handler ( int  sig)
staticprotected

◆ signal_install()

void wibble::net::TCPServer::signal_install ( )
protected

◆ signal_setup()

void wibble::net::TCPServer::signal_setup ( )
protected

◆ signal_uninstall()

void wibble::net::TCPServer::signal_uninstall ( )
protected

Member Data Documentation

◆ last_signal

int wibble::net::TCPServer::last_signal
staticprotected

◆ stop_signals

std::vector<int> wibble::net::TCPServer::stop_signals

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