Files
stvpn/server.cpp
T
2026-04-22 14:32:31 +02:00

40 lines
982 B
C++

extern "C" {
#include <arpa/inet.h>
}
#include <expected>
#include <string>
#include <vector>
#include <span>
#include <iostream>
#include <thread>
#include <chrono>
#include <cstring>
#include <interface.hpp>
#include <service.hpp>
#include <server.hpp>
std::expected<void, std::string> Server::Create(const std::string name, const std::string addr, const int prefix) {
auto createres = iface.Create(name);
if (!createres) {
return std::unexpected(createres.error());
}
auto setaddrres = iface.SetIP4Address(addr);
if (!setaddrres) {
return std::unexpected(setaddrres.error());
}
auto setprefixres = iface.SetIP4Netmask(24);
if (!setprefixres) {
return std::unexpected(setprefixres.error());
}
auto setmtures = iface.SetMTU(1240);
if (!setmtures) {
return std::unexpected(setmtures.error());
}
return {};
}