OpenVpnConfigurator fix
This commit is contained in:
parent
8c679a08c4
commit
1db253f1fd
2 changed files with 16 additions and 8 deletions
|
@ -249,8 +249,11 @@ QString OpenVpnConfigurator::genOpenVpnConfig(const ServerCredentials &credentia
|
||||||
return QJsonDocument(jConfig).toJson();
|
return QJsonDocument(jConfig).toJson();
|
||||||
}
|
}
|
||||||
|
|
||||||
QString OpenVpnConfigurator::processConfigWithLocalSettings(QString config)
|
QString OpenVpnConfigurator::processConfigWithLocalSettings(QString jsonConfig)
|
||||||
{
|
{
|
||||||
|
QJsonObject json = QJsonDocument::fromJson(jsonConfig.toUtf8()).object();
|
||||||
|
QString config = json[config_key::config].toString();
|
||||||
|
|
||||||
if (m_settings().routeMode() != Settings::VpnAllSites) {
|
if (m_settings().routeMode() != Settings::VpnAllSites) {
|
||||||
config.replace("redirect-gateway def1 bypass-dhcp", "");
|
config.replace("redirect-gateway def1 bypass-dhcp", "");
|
||||||
}
|
}
|
||||||
|
@ -260,7 +263,7 @@ QString OpenVpnConfigurator::processConfigWithLocalSettings(QString config)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
#if defined Q_OS_MAC || defined(Q_OS_LINUX)
|
#if (defined Q_OS_MAC || defined(Q_OS_LINUX)) && !defined(Q_OS_ANDROID)
|
||||||
config.replace("block-outside-dns", "");
|
config.replace("block-outside-dns", "");
|
||||||
QString dnsConf = QString(
|
QString dnsConf = QString(
|
||||||
"\nscript-security 2\n"
|
"\nscript-security 2\n"
|
||||||
|
@ -271,20 +274,25 @@ QString OpenVpnConfigurator::processConfigWithLocalSettings(QString config)
|
||||||
config.append(dnsConf);
|
config.append(dnsConf);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
return config;
|
json[config_key::config] = config;
|
||||||
|
return QJsonDocument(json).toJson();
|
||||||
}
|
}
|
||||||
|
|
||||||
QString OpenVpnConfigurator::processConfigWithExportSettings(QString config)
|
QString OpenVpnConfigurator::processConfigWithExportSettings(QString jsonConfig)
|
||||||
{
|
{
|
||||||
|
QJsonObject json = QJsonDocument::fromJson(jsonConfig.toUtf8()).object();
|
||||||
|
QString config = json[config_key::config].toString();
|
||||||
|
|
||||||
if(!config.contains("redirect-gateway def1 bypass-dhcp")) {
|
if(!config.contains("redirect-gateway def1 bypass-dhcp")) {
|
||||||
config.append("redirect-gateway def1 bypass-dhcp\n");
|
config.append("redirect-gateway def1 bypass-dhcp\n");
|
||||||
}
|
}
|
||||||
|
|
||||||
#if defined Q_OS_MAC || defined(Q_OS_LINUX)
|
#if (defined Q_OS_MAC || defined(Q_OS_LINUX)) && !defined(Q_OS_ANDROID)
|
||||||
config.replace("block-outside-dns", "");
|
config.replace("block-outside-dns", "");
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
return config;
|
json[config_key::config] = config;
|
||||||
|
return QJsonDocument(json).toJson();
|
||||||
}
|
}
|
||||||
|
|
||||||
ErrorCode OpenVpnConfigurator::signCert(DockerContainer container,
|
ErrorCode OpenVpnConfigurator::signCert(DockerContainer container,
|
||||||
|
|
|
@ -25,8 +25,8 @@ public:
|
||||||
static QString genOpenVpnConfig(const ServerCredentials &credentials, DockerContainer container,
|
static QString genOpenVpnConfig(const ServerCredentials &credentials, DockerContainer container,
|
||||||
const QJsonObject &containerConfig, ErrorCode *errorCode = nullptr);
|
const QJsonObject &containerConfig, ErrorCode *errorCode = nullptr);
|
||||||
|
|
||||||
static QString processConfigWithLocalSettings(QString config);
|
static QString processConfigWithLocalSettings(QString jsonConfig);
|
||||||
static QString processConfigWithExportSettings(QString config);
|
static QString processConfigWithExportSettings(QString jsonConfig);
|
||||||
|
|
||||||
static ErrorCode signCert(DockerContainer container,
|
static ErrorCode signCert(DockerContainer container,
|
||||||
const ServerCredentials &credentials, QString clientId);
|
const ServerCredentials &credentials, QString clientId);
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue