2020-12-26 15:03:51 +03:00
|
|
|
#ifndef LOCALSERVER_H
|
|
|
|
|
#define LOCALSERVER_H
|
|
|
|
|
|
|
|
|
|
#include <QObject>
|
2021-01-26 15:01:15 +03:00
|
|
|
#include <QPointer>
|
2020-12-26 15:03:51 +03:00
|
|
|
#include <QProcess>
|
2021-01-26 15:01:15 +03:00
|
|
|
#include <QSharedPointer>
|
2020-12-26 15:03:51 +03:00
|
|
|
#include <QStringList>
|
|
|
|
|
#include <QVector>
|
|
|
|
|
|
2021-02-02 01:47:40 +03:00
|
|
|
#include "ipcserver.h"
|
2020-12-26 15:03:51 +03:00
|
|
|
|
2023-09-14 19:44:17 +03:00
|
|
|
#include "../../client/daemon/daemonlocalserver.h"
|
2025-12-02 11:46:24 +07:00
|
|
|
#include "../../client/mozilla/networkwatcher.h"
|
2023-09-17 17:06:24 -04:00
|
|
|
|
|
|
|
|
#ifdef Q_OS_WIN
|
2023-09-14 19:44:17 +03:00
|
|
|
#include "windows/daemon/windowsdaemon.h"
|
|
|
|
|
#endif
|
|
|
|
|
|
2023-09-17 17:06:24 -04:00
|
|
|
#ifdef Q_OS_LINUX
|
|
|
|
|
#include "linux/daemon/linuxdaemon.h"
|
|
|
|
|
#endif
|
|
|
|
|
|
2023-07-15 14:19:48 -07:00
|
|
|
#ifdef Q_OS_MAC
|
2023-09-14 19:44:17 +03:00
|
|
|
#include "macos/daemon/macosdaemon.h"
|
2023-07-15 14:19:48 -07:00
|
|
|
#endif
|
|
|
|
|
|
2020-12-26 15:03:51 +03:00
|
|
|
class QLocalServer;
|
|
|
|
|
class QLocalSocket;
|
|
|
|
|
class QProcess;
|
|
|
|
|
|
|
|
|
|
class LocalServer : public QObject
|
|
|
|
|
{
|
|
|
|
|
Q_OBJECT
|
|
|
|
|
|
|
|
|
|
public:
|
2020-12-26 23:17:20 +03:00
|
|
|
explicit LocalServer(QObject* parent = nullptr);
|
2020-12-26 15:03:51 +03:00
|
|
|
~LocalServer();
|
2021-01-26 15:01:15 +03:00
|
|
|
QSharedPointer<QLocalServer> m_server;
|
2021-02-02 01:47:40 +03:00
|
|
|
IpcServer m_ipcServer;
|
2024-09-20 04:12:22 -07:00
|
|
|
IpcProcessTun2Socks m_tun2socks;
|
2021-02-02 01:47:40 +03:00
|
|
|
QRemoteObjectHost m_serverNode;
|
2021-02-03 15:42:36 +03:00
|
|
|
bool m_isRemotingEnabled = false;
|
2025-12-02 11:46:24 +07:00
|
|
|
|
|
|
|
|
NetworkWatcher m_networkWatcher;
|
2023-09-17 17:06:24 -04:00
|
|
|
#ifdef Q_OS_LINUX
|
|
|
|
|
DaemonLocalServer server{qApp};
|
|
|
|
|
LinuxDaemon daemon;
|
|
|
|
|
#endif
|
2023-09-14 19:44:17 +03:00
|
|
|
#ifdef Q_OS_WIN
|
|
|
|
|
DaemonLocalServer server{qApp};
|
|
|
|
|
WindowsDaemon daemon;
|
|
|
|
|
#endif
|
2023-07-15 14:19:48 -07:00
|
|
|
#ifdef Q_OS_MAC
|
|
|
|
|
DaemonLocalServer server{qApp};
|
2023-09-14 19:44:17 +03:00
|
|
|
MacOSDaemon daemon;
|
2023-07-15 14:19:48 -07:00
|
|
|
#endif
|
2020-12-26 15:03:51 +03:00
|
|
|
};
|
|
|
|
|
|
|
|
|
|
#endif // LOCALSERVER_H
|