From 00ab2cf6add2976b3a4e8f8cc488777ad5c27808 Mon Sep 17 00:00:00 2001 From: Dennis Brentjes Date: Fri, 26 Aug 2016 11:21:41 +0200 Subject: Initial commit, just some ideas and testing. --- network-handler/networkhandler.hpp | 34 ++++++++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) create mode 100644 network-handler/networkhandler.hpp (limited to 'network-handler/networkhandler.hpp') diff --git a/network-handler/networkhandler.hpp b/network-handler/networkhandler.hpp new file mode 100644 index 0000000..d0eab6f --- /dev/null +++ b/network-handler/networkhandler.hpp @@ -0,0 +1,34 @@ +#pragma once + +#include +#include + +#include +#include +#include + +struct ListenSettings { + bool enable_ipv4; + std::string ipv4_inaddr; + bool enable_ipv6; + std::string ipv6_inaddr; + uint16_t port; +}; + +class NetworkHandler +{ + ListenSettings const& listen_settings; + + boost::asio::io_service io_service; + boost::asio::ip::tcp::acceptor v4_acceptor; + boost::asio::ip::tcp::acceptor v6_acceptor; + boost::asio::ip::tcp::endpoint v4_endpoint; + boost::asio::ip::tcp::endpoint v6_endpoint; + + std::list accepted_connections; + +public: + NetworkHandler(ListenSettings const& listen_settings); + + void run(); +}; -- cgit v1.2.3-70-g09d2