Qt ro refact

This commit is contained in:
pokamest 2021-02-03 15:42:36 +03:00
parent b2392c1943
commit b6571d99de
14 changed files with 157 additions and 36 deletions

View file

@ -4,7 +4,7 @@
#include <QRegularExpression>
#include <QTcpSocket>
#include "communicator.h"
//#include "communicator.h"
#include "debug.h"
#include "openvpnprotocol.h"
#include "utils.h"
@ -166,29 +166,36 @@ ErrorCode OpenVpnProtocol::start()
setConnectionState(ConnectionState::Connecting);
QSharedPointer<IpcProcessInterfaceReplica> process = IpcClient::createPrivilegedProcess();
process->waitForSource(1000);
if (!process->isInitialized()) {
m_openVpnProcess = IpcClient::createPrivilegedProcess();
if (!m_openVpnProcess) {
qWarning() << "IpcProcess replica is not created!";
return ErrorCode::AmneziaServiceConnectionFailed;
}
process->setProgram(openVpnExecPath());
m_openVpnProcess->waitForSource(1000);
if (!m_openVpnProcess->isInitialized()) {
qWarning() << "IpcProcess replica is not connected!";
return ErrorCode::AmneziaServiceConnectionFailed;
}
m_openVpnProcess->setProgram(openVpnExecPath());
QStringList arguments({"--config" , configPath(),
"--management", m_managementHost, QString::number(m_managementPort),
"--management-client",
"--log-append", vpnLogFileNamePath
});
process->setArguments(arguments);
m_openVpnProcess->setArguments(arguments);
qDebug() << arguments.join(" ");
connect(process.data(), &IpcProcessInterfaceReplica::errorOccurred, [&](QProcess::ProcessError error) {
connect(m_openVpnProcess.data(), &IpcProcessInterfaceReplica::errorOccurred, [&](QProcess::ProcessError error) {
qDebug() << "IpcProcessInterfaceReplica errorOccurred" << error;
});
connect(process.data(), &IpcProcessInterfaceReplica::stateChanged, [&](QProcess::ProcessState newState) {
connect(m_openVpnProcess.data(), &IpcProcessInterfaceReplica::stateChanged, [&](QProcess::ProcessState newState) {
qDebug() << "IpcProcessInterfaceReplica stateChanged" << newState;
});
process->start();
m_openVpnProcess->start();
//m_communicator->sendMessage(Message(Message::State::StartRequest, args));
//startTimeoutTimer();

View file

@ -53,6 +53,8 @@ protected:
private:
void updateRouteGateway(QString line);
void updateVpnGateway();
QSharedPointer<IpcProcessInterfaceReplica> m_openVpnProcess;
};
#endif // OPENVPNPROTOCOL_H

View file

@ -1,7 +1,7 @@
#include "shadowsocksvpnprotocol.h"
#include "core/servercontroller.h"
#include "communicator.h"
//#include "communicator.h"
#include "debug.h"
#include "utils.h"

View file

@ -1,7 +1,7 @@
#include <QDebug>
#include <QTimer>
#include "communicator.h"
//#include "communicator.h"
#include "vpnprotocol.h"
#include "core/errorstrings.h"