#include "stg/module_settings.h"
#include "stg/subscriptions.h"
#include "stg/logger.h"
+#include "server.h"
+#include <boost/asio.hpp>
#include <string>
+#include <memory>
#include <mutex>
#include <jthread.hpp>
#include <cstdint> //uint8_t, uint32_t
{
struct Settings;
+ class Users;
+
class RAD_SETTINGS
{
public:
RADIUS(const RADIUS&) = delete;
RADIUS& operator=(const RADIUS&) = delete;
+ void SetUsers(Users* u) { m_users = u; }
void SetSettings(const ModuleSettings & s) override { m_settings = s; }
int ParseSettings() override;
private:
std::mutex m_mutex;
+ boost::asio::io_service m_ioService;
int Run(std::stop_token token);
mutable std::string m_errorStr;
bool m_running;
std::jthread m_thread;
-
+ Users* m_users;
PluginLogger m_logger;
+
+ std::unique_ptr<Server> m_server;
};
}