working commit
This commit is contained in:
+16
-3
@@ -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()));
|
||||
|
||||
Reference in New Issue
Block a user