ShadowSocks protocol fixes:

- remote for OpenVPN is set to real ip address
- remote ip will be added as alias in docker container
- ss-local graceful shutdown
- crash fixes
This commit is contained in:
pokamest 2021-03-18 18:45:08 +03:00
parent 84e4b776ac
commit d831d68e73
14 changed files with 173 additions and 65 deletions

View file

@ -17,12 +17,15 @@ OpenVpnProtocol::OpenVpnProtocol(const QJsonObject &configuration, QObject* pare
OpenVpnProtocol::~OpenVpnProtocol()
{
qDebug() << "OpenVpnProtocol::stop()";
qDebug() << "OpenVpnProtocol::~OpenVpnProtocol()";
OpenVpnProtocol::stop();
QThread::msleep(200);
}
void OpenVpnProtocol::stop()
{
qDebug() << "OpenVpnProtocol::stop()";
// TODO: need refactoring
// sendTermSignal() will even return true while server connected ???
if ((m_connectionState == VpnProtocol::ConnectionState::Preparing) ||
@ -32,6 +35,8 @@ void OpenVpnProtocol::stop()
if (!sendTermSignal()) {
killOpenVpnProcess();
}
m_managementServer.stop();
qApp->processEvents();
setConnectionState(VpnProtocol::ConnectionState::Disconnecting);
}
}