#ifndef TSERVICE_HPP #define TSERVICE_HPP #include #include #include #include class TunNetwork { public: TunNetwork(std::string iladdr, std::string iraddr); std::string laddr; std::string raddr; bool used; }; class TunService { private: std::string tunnelnet; std::vector localnets; std::vector tunnets; int listenport; int sock; public: explicit TunService(int port, std::string tunnelnet, std::vector localnets); std::expected Init(void); std::expected Bind(void); std::expected Listen(void); void Handle(int sock); ~TunService(); }; #endif