mirror of
https://github.com/amnezia-vpn/amnezia-client.git
synced 2026-06-22 02:01:08 +07:00
Merge branch 'dev' of github.com:amnezia-vpn/amnezia-client into feature/new-gui
This commit is contained in:
@@ -664,7 +664,8 @@ ErrorCode ServerController::isServerPortBusy(const ServerCredentials &credential
|
||||
ProtocolProps::transportProtoToString(ProtocolProps::defaultTransportProto(protocol), protocol);
|
||||
QString transportProto = containerConfig.value(config_key::transport_proto).toString(defaultTransportProto);
|
||||
|
||||
QString script = QString("which lsof &>/dev/null || true && sudo lsof -i -P -n | grep -E ':%1 ").arg(port);
|
||||
// TODO reimplement with netstat
|
||||
QString script = QString("which lsof &>/dev/null || true && sudo lsof -i -P -n 2>/dev/null | grep -E ':%1 ").arg(port);
|
||||
for (auto &port : fixedPorts) {
|
||||
script = script.append("|:%1").arg(port);
|
||||
}
|
||||
@@ -728,7 +729,7 @@ ErrorCode ServerController::isServerDpkgBusy(const ServerCredentials &credential
|
||||
|
||||
QFuture<ErrorCode> future = QtConcurrent::run([this, &stdOut, &cbReadStdOut, &cbReadStdErr, &credentials]() {
|
||||
// max 100 attempts
|
||||
for (int i = 0; i < 100; ++i) {
|
||||
for (int i = 0; i < 30; ++i) {
|
||||
if (m_cancelInstallation) {
|
||||
return ErrorCode::ServerCancelInstallation;
|
||||
}
|
||||
@@ -738,9 +739,8 @@ ErrorCode ServerController::isServerDpkgBusy(const ServerCredentials &credential
|
||||
genVarsForScript(credentials)),
|
||||
cbReadStdOut, cbReadStdErr);
|
||||
|
||||
// if 'fuser' is not installed, skip check
|
||||
if (stdOut.contains("Not installed"))
|
||||
return ErrorCode::NoError;
|
||||
if (stdOut.contains("Packet manager not found")) return ErrorCode::ServerPacketManagerError;
|
||||
if (stdOut.contains("fuser not installed")) return ErrorCode::NoError;
|
||||
|
||||
if (stdOut.isEmpty()) {
|
||||
return ErrorCode::NoError;
|
||||
@@ -749,7 +749,7 @@ ErrorCode ServerController::isServerDpkgBusy(const ServerCredentials &credential
|
||||
qDebug().noquote() << stdOut;
|
||||
#endif
|
||||
emit serverIsBusy(true);
|
||||
QThread::msleep(5000);
|
||||
QThread::msleep(10000);
|
||||
}
|
||||
}
|
||||
return ErrorCode::ServerPacketManagerError;
|
||||
|
||||
@@ -2,4 +2,4 @@ if which apt-get > /dev/null 2>&1; then LOCK_FILE="/var/lib/dpkg/lock-frontend";
|
||||
elif which dnf > /dev/null 2>&1; then LOCK_FILE="/var/run/dnf.pid";\
|
||||
elif which yum > /dev/null 2>&1; then LOCK_FILE="/var/run/yum.pid";\
|
||||
else echo "Packet manager not found"; echo "Internal error"; exit 1; fi;\
|
||||
if command -v fuser > /dev/null 2>&1; then sudo fuser $LOCK_FILE; else echo "Not installed"; fi
|
||||
if command -v fuser > /dev/null 2>&1; then sudo fuser $LOCK_FILE 2>/dev/null; else echo "fuser not installed"; fi
|
||||
|
||||
Reference in New Issue
Block a user