added implementation of V2RayConfigurator and V2RayProtocol classes

This commit is contained in:
vladimir.kuznetsov 2023-02-10 20:07:17 +03:00
parent 8032e55d7c
commit 7d51cb7d58
24 changed files with 369 additions and 20 deletions

View file

@ -1,9 +1,12 @@
#ifndef V2RAYPROTOCOL_H
#define V2RAYPROTOCOL_H
#include "vpnprotocol.h"
#include "QProcess"
#include "QTemporaryFile"
class V2RayProtocol : public VpnProtocol
#include "openvpnprotocol.h"
class V2RayProtocol : public OpenVpnProtocol
{
public:
V2RayProtocol(const QJsonObject& configuration, QObject* parent = nullptr);
@ -13,10 +16,15 @@ public:
void stop() override;
private:
QJsonObject m_shadowSocksConfig;
QJsonObject m_v2RayConfig;
QTemporaryFile m_v2RayConfigFile;
#ifndef Q_OS_IOS
QProcess m_v2RayProcess;
#endif
void writeV2RayConfiguration(const QJsonObject &configuration);
const QString v2rayExecPath() const;
const QString v2RayExecPath() const;
};
#endif // V2RAYPROTOCOL_H