ProtocolsModel bug fixes

This commit is contained in:
pokamest 2021-11-17 23:42:17 +03:00
parent 3a49d5fdc4
commit e0f42f4a0a
5 changed files with 17 additions and 8 deletions

View file

@ -48,6 +48,9 @@ QVector<amnezia::Protocol> ContainerProps::protocolsForContainer(amnezia::Docker
case DockerContainer::Dns:
return { };
case DockerContainer::Sftp:
return { Protocol::Sftp};
default:
return { defaultProtocol(container) };
}
@ -76,7 +79,7 @@ QMap<DockerContainer, QString> ContainerProps::containerHumanNames()
{DockerContainer::TorWebSite, QObject::tr("Web site in TOR network")},
{DockerContainer::Dns, QObject::tr("DNS Service")},
{DockerContainer::FileShare, QObject::tr("SMB file sharing service")},
//{DockerContainer::FileShare, QObject::tr("SMB file sharing service")},
{DockerContainer::Sftp, QObject::tr("Sftp file sharing service")}
};
}
@ -93,7 +96,7 @@ QMap<DockerContainer, QString> ContainerProps::containerDescriptions()
{DockerContainer::TorWebSite, QObject::tr("Web site in TOR network")},
{DockerContainer::Dns, QObject::tr("DNS Service")},
{DockerContainer::FileShare, QObject::tr("SMB file sharing service - is Window file sharing protocol")},
//{DockerContainer::FileShare, QObject::tr("SMB file sharing service - is Window file sharing protocol")},
{DockerContainer::Sftp, QObject::tr("Sftp file sharing service - is secure FTP service")}
};
}
@ -109,7 +112,7 @@ amnezia::ServiceType ContainerProps::containerService(DockerContainer c)
case DockerContainer::Ipsec : return ServiceType::Vpn;
case DockerContainer::TorWebSite : return ServiceType::Other;
case DockerContainer::Dns : return ServiceType::Other;
case DockerContainer::FileShare : return ServiceType::Other;
//case DockerContainer::FileShare : return ServiceType::Other;
case DockerContainer::Sftp : return ServiceType::Other;
default: return ServiceType::Other;
}
@ -127,7 +130,7 @@ Protocol ContainerProps::defaultProtocol(DockerContainer c)
case DockerContainer::TorWebSite : return Protocol::TorWebSite;
case DockerContainer::Dns : return Protocol::Dns;
case DockerContainer::FileShare : return Protocol::FileShare;
//case DockerContainer::FileShare : return Protocol::FileShare;
case DockerContainer::Sftp : return Protocol::Sftp;
default: return Protocol::Any;
}

View file

@ -23,7 +23,7 @@ enum DockerContainer {
//non-vpn
TorWebSite,
Dns,
FileShare,
//FileShare,
Sftp
};
Q_ENUM_NS(DockerContainer)

View file

@ -15,7 +15,7 @@ QString amnezia::scriptFolder(amnezia::DockerContainer container)
case DockerContainer::TorWebSite: return QLatin1String("website_tor");
case DockerContainer::Dns: return QLatin1String("dns");
case DockerContainer::FileShare: return QLatin1String("file_share");
//case DockerContainer::FileShare: return QLatin1String("file_share");
case DockerContainer::Sftp: return QLatin1String("sftp");
default: return "";
}

View file

@ -127,7 +127,13 @@ ErrorCode ServerController::runContainerScript(const ServerCredentials &credenti
const std::function<void (const QString &, QSharedPointer<QSsh::SshRemoteProcess>)> &cbReadStdErr)
{
QString fileName = "/opt/amnezia/" + Utils::getRandomString(16) + ".sh";
ErrorCode e = uploadTextFileToContainer(container, credentials, script, fileName);
QString mkdir = "sudo docker exec -i $CONTAINER_NAME mkdir -p /opt/amnezia/";
ErrorCode e = runScript(credentials,
replaceVars(mkdir, genVarsForScript(credentials, container)), cbReadStdOut, cbReadStdErr);
if (e) return e;
e = uploadTextFileToContainer(container, credentials, script, fileName);
if (e) return e;
QString runner = QString("sudo docker exec -i $CONTAINER_NAME bash %1 ").arg(fileName);

View file

@ -24,7 +24,7 @@ QHash<int, QByteArray> ProtocolsModel::roleNames() const {
QVariant ProtocolsModel::data(const QModelIndex &index, int role) const
{
if (!index.isValid() || index.row() < 0
|| index.row() >= ContainerProps::allContainers().size()) {
|| index.row() >= ProtocolProps::allProtocols().size()) {
return QVariant();
}