Merge pull request #192 from amnezia-vpn/bugfix/check-server-port-on-dns-container

bugfix/check-server-port-on-dns-container
This commit is contained in:
pokamest 2023-03-21 23:08:03 +00:00 committed by GitHub
commit b98c6ca5c5
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -865,6 +865,10 @@ QString ServerController::replaceVars(const QString &script, const Vars &vars)
ErrorCode ServerController::isServerPortBusy(const ServerCredentials &credentials, DockerContainer container, const QJsonObject &config) ErrorCode ServerController::isServerPortBusy(const ServerCredentials &credentials, DockerContainer container, const QJsonObject &config)
{ {
if (container == DockerContainer::Dns) {
return ErrorCode::NoError;
}
QString stdOut; QString stdOut;
auto cbReadStdOut = [&](const QString &data, QSharedPointer<QSsh::SshRemoteProcess> proc) { auto cbReadStdOut = [&](const QString &data, QSharedPointer<QSsh::SshRemoteProcess> proc) {
stdOut += data + "\n"; stdOut += data + "\n";
@ -886,8 +890,11 @@ ErrorCode ServerController::isServerPortBusy(const ServerCredentials &credential
script = script.append("|:%1").arg(port); script = script.append("|:%1").arg(port);
} }
script = script.append("' | grep -i %1").arg(transportProto); script = script.append("' | grep -i %1").arg(transportProto);
runScript(credentials, ErrorCode errorCode = runScript(credentials,
replaceVars(script, genVarsForScript(credentials, container)), cbReadStdOut, cbReadStdErr); replaceVars(script, genVarsForScript(credentials, container)), cbReadStdOut, cbReadStdErr);
if (errorCode != ErrorCode::NoError) {
return errorCode;
}
if (!stdOut.isEmpty()) { if (!stdOut.isEmpty()) {
return ErrorCode::ServerPortAlreadyAllocatedError; return ErrorCode::ServerPortAlreadyAllocatedError;