checking that the username is root

Changing the mechanism for checking that the username is root
This commit is contained in:
lunardunno 2024-11-16 09:04:11 +04:00 committed by GitHub
parent 8547de82ea
commit 3d95b14fc1
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -751,10 +751,6 @@ ErrorCode ServerController::isServerPortBusy(const ServerCredentials &credential
ErrorCode ServerController::isUserInSudo(const ServerCredentials &credentials, DockerContainer container)
{
if (credentials.userName == "root") {
return ErrorCode::NoError;
}
QString stdOut;
auto cbReadStdOut = [&](const QString &data, libssh::Client &) {
stdOut += data + "\n";
@ -768,7 +764,7 @@ ErrorCode ServerController::isUserInSudo(const ServerCredentials &credentials, D
const QString scriptData = amnezia::scriptData(SharedScriptType::check_user_in_sudo);
ErrorCode error = runScript(credentials, replaceVars(scriptData, genVarsForScript(credentials)), cbReadStdOut, cbReadStdErr);
if (!stdOut.contains("sudo"))
if (!stdOut.contains("root :") && !stdOut.contains(" sudo"))
return ErrorCode::ServerUserNotInSudo;
return error;