// socket.h #ifndef HAVE_SOCKET_H #define HAVE_SOCKET_H #include "common/config.h" #include "common/string.h" #include "common/log.h" class Socket { public: Socket(); ~Socket(); BOOL initialize(); BOOL initialize(const INT listen_port); const INT get_fdmax() { return fdmax; } void copy_fdset(fd_set *set) { memcpy(set, &fdset, sizeof(fdset)); } const INT get_socket_fd() { return socket_fd; } void set_port(const INT set) { port = set; } void set_backlog(const INT set) { backlog = set; } const STRING get_uptime(); const time_t get_start_time() { return start_time; } const INT open_connection(); const INT open_connection(struct sockaddr_in *sock); void close_connection(const INT& fd); const STRING convert_time(time_t tSeconds); protected: fd_set fdset; INT socket_fd;; private: time_t start_time; INT optval, port, backlog, fdmax; struct sockaddr_in addr; }; #endif // HAVE_SOCKET_H