xale-db 1.0
minimal SQL engine, written in c++
Loading...
Searching...
No Matches
LinuxListenerSocket.h
Go to the documentation of this file.
1#ifndef NET_LINUX_LISTENER_SOCKET_H
2#define NET_LINUX_LISTENER_SOCKET_H
3
4#if defined(__linux__) || defined(linux) || defined(__GNUG__)
5
6#include <Logger.h>
7
10
11#include <sys/socket.h>
12#include <netinet/in.h>
13#include <arpa/inet.h>
14#include <unistd.h>
15#include <cstring>
16#include <string>
17
18namespace Xale::Net
19{
23 class LinuxListenerSocket : public IListenerSocket
24 {
25 public:
29 LinuxListenerSocket();
30
35 bool open(int port) override;
36
41 std::unique_ptr<IClientConnection> acceptClient() override;
42
46 void close() override;
47
48 private:
49 Xale::Logger::Logger<LinuxListenerSocket>& _logger;
50 int _socket;
51 };
52}
53
54#endif // linux
55#endif // NET_LINUX_LISTENER_SOCKET_H
Server-side socket: binds a port and produces per-client connections.
Definition IListenerSocket.h:16
Definition IPacket.h:8