fixed wireguard empty 'subnet address' field after reinstalling and removed showing mask for AWG and wireguard in UI
This commit is contained in:
parent
f3b3f165a8
commit
5600bf9768
1 changed files with 32 additions and 16 deletions
|
@ -363,13 +363,14 @@ ErrorCode InstallController::getAlreadyInstalledContainers(const ServerCredentia
|
||||||
|
|
||||||
QJsonObject config;
|
QJsonObject config;
|
||||||
Proto mainProto = ContainerProps::defaultProtocol(container);
|
Proto mainProto = ContainerProps::defaultProtocol(container);
|
||||||
for (auto protocol : ContainerProps::protocolsForContainer(container)) {
|
const auto &protocols = ContainerProps::protocolsForContainer(container);
|
||||||
|
for (const auto &protocol : protocols) {
|
||||||
QJsonObject containerConfig;
|
QJsonObject containerConfig;
|
||||||
if (protocol == mainProto) {
|
if (protocol == mainProto) {
|
||||||
containerConfig.insert(config_key::port, port);
|
containerConfig.insert(config_key::port, port);
|
||||||
containerConfig.insert(config_key::transport_proto, transportProto);
|
containerConfig.insert(config_key::transport_proto, transportProto);
|
||||||
|
|
||||||
if (protocol == Proto::Awg || protocol == Proto::WireGuard) {
|
if (protocol == Proto::Awg) {
|
||||||
QString serverConfig = serverController->getTextFileFromContainer(container, credentials,
|
QString serverConfig = serverController->getTextFileFromContainer(container, credentials,
|
||||||
protocols::awg::serverConfigPath, errorCode);
|
protocols::awg::serverConfigPath, errorCode);
|
||||||
|
|
||||||
|
@ -387,9 +388,7 @@ ErrorCode InstallController::getAlreadyInstalledContainers(const ServerCredentia
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
containerConfig[config_key::subnet_address] = serverConfigMap.value("Address");
|
containerConfig[config_key::subnet_address] = serverConfigMap.value("Address").remove("/24");
|
||||||
|
|
||||||
if (protocol == Proto::Awg) {
|
|
||||||
containerConfig[config_key::junkPacketCount] = serverConfigMap.value(config_key::junkPacketCount);
|
containerConfig[config_key::junkPacketCount] = serverConfigMap.value(config_key::junkPacketCount);
|
||||||
containerConfig[config_key::junkPacketMinSize] = serverConfigMap.value(config_key::junkPacketMinSize);
|
containerConfig[config_key::junkPacketMinSize] = serverConfigMap.value(config_key::junkPacketMinSize);
|
||||||
containerConfig[config_key::junkPacketMaxSize] = serverConfigMap.value(config_key::junkPacketMaxSize);
|
containerConfig[config_key::junkPacketMaxSize] = serverConfigMap.value(config_key::junkPacketMaxSize);
|
||||||
|
@ -401,8 +400,25 @@ ErrorCode InstallController::getAlreadyInstalledContainers(const ServerCredentia
|
||||||
serverConfigMap.value(config_key::underloadPacketMagicHeader);
|
serverConfigMap.value(config_key::underloadPacketMagicHeader);
|
||||||
containerConfig[config_key::transportPacketMagicHeader] =
|
containerConfig[config_key::transportPacketMagicHeader] =
|
||||||
serverConfigMap.value(config_key::transportPacketMagicHeader);
|
serverConfigMap.value(config_key::transportPacketMagicHeader);
|
||||||
}
|
|
||||||
|
|
||||||
|
} else if (protocol == Proto::WireGuard) {
|
||||||
|
QString serverConfig = serverController->getTextFileFromContainer(container, credentials,
|
||||||
|
protocols::wireguard::serverConfigPath, errorCode);
|
||||||
|
|
||||||
|
QMap<QString, QString> serverConfigMap;
|
||||||
|
auto serverConfigLines = serverConfig.split("\n");
|
||||||
|
for (auto &line : serverConfigLines) {
|
||||||
|
auto trimmedLine = line.trimmed();
|
||||||
|
if (trimmedLine.startsWith("[") && trimmedLine.endsWith("]")) {
|
||||||
|
continue;
|
||||||
|
} else {
|
||||||
|
QStringList parts = trimmedLine.split(" = ");
|
||||||
|
if (parts.count() == 2) {
|
||||||
|
serverConfigMap.insert(parts[0].trimmed(), parts[1].trimmed());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
containerConfig[config_key::subnet_address] = serverConfigMap.value("Address").remove("/24");
|
||||||
} else if (protocol == Proto::Sftp) {
|
} else if (protocol == Proto::Sftp) {
|
||||||
stdOut.clear();
|
stdOut.clear();
|
||||||
script = QString("sudo docker inspect --format '{{.Config.Cmd}}' %1").arg(name);
|
script = QString("sudo docker inspect --format '{{.Config.Cmd}}' %1").arg(name);
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue