working commit

This commit is contained in:
2026-05-18 14:56:08 +02:00
parent e52e90c222
commit 498a3867fb
9 changed files with 73 additions and 23 deletions
+16 -3
View File
@@ -132,6 +132,7 @@ void UxClient::RecvMessages(void) {
if (!setMaskRes) {
uxlogger.Error(setMaskRes.error());
}
tunAddress = addrMessage.address();
} else if (kind == internetPkgMsg) {
uxcontrol::PacketMessage packetMessage;
packetMessage.ParseFromString(rawMessage);
@@ -141,6 +142,21 @@ void UxClient::RecvMessages(void) {
auto error = writeRes.error();
uxlogger.Error(std::format("Write packet error: {}", error));
}
} else if (kind == localRouteMsg) {
uxcontrol::RouteMessage routeMessage;
routeMessage.ParseFromString(rawMessage);
auto network = routeMessage.address();
auto prefix = routeMessage.prefix();
uxlogger.Info(std::format("Received route {}/{} gw {}", network, prefix, tunAddress));
if (tunAddress != "") {
Router router;
auto addRouteRes = router.AddRoute(network, prefix, tunAddress, interface.Name());
if (!addRouteRes) {
uxlogger.Error(addRouteRes.error());
} else {
uxlogger.Warning(std::format("Add route {}/{}", network, prefix));
}
}
} else {
uxlogger.Warning("Received unknown kind of message");
}
@@ -151,9 +167,6 @@ void UxClient::RecvMessages(void) {
void UxClient::SendMessages(void) {
while (true) {
//std::this_thread::sleep_for(std::chrono::seconds(10));
//continue;
auto readRes = interface.Read();
if (!readRes) {
uxlogger.Log(std::format("Read packet error: {}", readRes.error()));