X-Git-Url: https://git.stg.codes/stg.git/blobdiff_plain/0907aa4037b12b6b88ee24495d4577a064d4f8db..b27841d687ec9e84983340b5581376dfb24010ea:/projects/stargazer/plugins/capture/ether_linux/ether_cap.h diff --git a/projects/stargazer/plugins/capture/ether_linux/ether_cap.h b/projects/stargazer/plugins/capture/ether_linux/ether_cap.h index cf776a45..fa3af3bd 100644 --- a/projects/stargazer/plugins/capture/ether_linux/ether_cap.h +++ b/projects/stargazer/plugins/capture/ether_linux/ether_cap.h @@ -25,19 +25,21 @@ #pragma once -#include - -#include - #include "stg/plugin.h" #include "stg/module_settings.h" #include "stg/logger.h" +#include +#pragma GCC diagnostic push +#pragma GCC diagnostic ignored "-Wshadow" +#include +#pragma GCC diagnostic pop + namespace STG { -struct Users; -struct Tariffs; +class Users; +class Tariffs; struct Admins; struct TraffCounter; struct Settings; @@ -66,15 +68,14 @@ private: ETHER_CAP(const ETHER_CAP & rvalue); ETHER_CAP & operator=(const ETHER_CAP & rvalue); - static void * Run(void *); + void Run(std::stop_token token); int EthCapOpen(); int EthCapClose(); int EthCapRead(void * buffer, int blen, char ** iface); mutable std::string errorStr; - pthread_t thread; - bool nonstop; + std::jthread m_thread; bool isRunning; int capSock;