1 #ifndef WIBBLE_NET_SERVER_H
2 #define WIBBLE_NET_SERVER_H
79 virtual void handle_client(
int sock,
const std::string& peer_hostname,
const std::string& peer_hostaddr,
const std::string& peer_port) = 0;
Generic bind/listen/accept internet server.
Definition: server.h:35
struct sigaction * signal_actions
Definition: server.h:48
void listen(int backlog=16)
std::string host
Definition: server.h:37
struct sigaction * old_signal_actions
Definition: server.h:46
std::string port
Definition: server.h:39
int socktype
Definition: server.h:41
int sock
Definition: server.h:43
void bind(const char *port, const char *host=NULL)
static int last_signal
Definition: server.h:83
static void signal_handler(int sig)
virtual void handle_client(int sock, const std::string &peer_hostname, const std::string &peer_hostaddr, const std::string &peer_port)=0
std::vector< int > stop_signals
Definition: server.h:67
int accept_loop()
Loop accepting connections on the socket, until interrupted by a signal in stop_signals.