#ifndef KILLSWITCH_H #define KILLSWITCH_H #include #include #include "secure_qsettings.h" class KillSwitch : public QObject { Q_OBJECT public: static KillSwitch *instance(); bool init(); bool refresh(bool enabled); bool disableKillSwitch(); bool disableAllTraffic(); bool enablePeerTraffic(const QJsonObject &configStr); bool enableKillSwitch(const QJsonObject &configStr, int vpnAdapterIndex); bool resetAllowedRange(const QStringList &ranges); bool addAllowedRange(const QStringList &ranges); bool isStrictKillSwitchEnabled(); private: KillSwitch(QObject* parent) {}; QStringList m_allowedRanges; QSharedPointer m_appSettigns; }; #endif // KILLSWITCH_H