#ifndef INTERFACE_HPP #define INTERFACE_HPP class Interface { private: int tunfd; std::string ifname; int mtu; public: std::expected Create(const std::string name); std::string Name(); int MTU(); std::expected SetMTU(int mtu); std::expected GetMTU(void); std::expected SetIP4Address(std::string ipaddr); std::expected SetIP4Netmask(int netmask); std::expected GetIP4Address(void); std::expected Up(void); std::expected Down(void); std::expected UpN(void); std::expected SetIP4AddrMask(const std::string address, const int prefix); ~Interface(); }; #endif