working commit
This commit is contained in:
@@ -110,14 +110,21 @@ std::expected<void, std::string> TunService::Listen(void) {
|
|||||||
|
|
||||||
void TunService::Handle(int sock) {
|
void TunService::Handle(int sock) {
|
||||||
std::string laddr, raddr;
|
std::string laddr, raddr;
|
||||||
|
bool netFound = false;
|
||||||
for (auto& net: tunnets) {
|
for (auto& net: tunnets) {
|
||||||
if (!net.used) {
|
if (!net.used) {
|
||||||
laddr = net.laddr;
|
laddr = net.laddr;
|
||||||
raddr = net.raddr;
|
raddr = net.raddr;
|
||||||
net.used = true;
|
net.used = true;
|
||||||
|
netFound = true;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
if (!netFound) {
|
||||||
|
uxlogger.Error("Not found free tunnnel network");
|
||||||
|
close(sock);
|
||||||
|
return;
|
||||||
|
}
|
||||||
uxlogger.Debug("Start socker handler");
|
uxlogger.Debug("Start socker handler");
|
||||||
SocketHandler handler;
|
SocketHandler handler;
|
||||||
handler.Handle(sock, laddr, raddr, localnets);
|
handler.Handle(sock, laddr, raddr, localnets);
|
||||||
|
|||||||
Reference in New Issue
Block a user