20 #include <znc/zncconfig.h> 33 class CConnectQueueTimer;
34 class CConfigWriteTimer;
67 bool bAllowMkDir =
true);
74 static CString GetTag(
bool bIncludeVersion =
true,
bool bHTML =
false);
87 CUser* pSkipUser =
nullptr,
CClient* pSkipClient =
nullptr);
101 TrafficStatsPair& ZNC,
102 TrafficStatsPair& Total);
104 TrafficStatsPair& Total);
108 void AuthUser(std::shared_ptr<CAuthBase> AuthClass);
215 if (!sMessage.empty()) {
254 CFile* InitPidFile();
260 void UnloadRemovedModules(
const MCString& msModules);
262 bool HandleUserDeletion();
const std::vector< CListener * > & GetListeners() const
Definition: znc.h:157
unsigned int GetConnectDelay() const
Definition: znc.h:166
unsigned int GetMaxBufferSize() const
Definition: znc.h:161
bool AddListener(CListener *)
unsigned long long m_uBytesRead
Definition: znc.h:299
const CString & GetConfigFile() const
Definition: znc.h:152
CString m_sPidFile
Definition: znc.h:284
void SetProtectWebSessions(bool b)
Definition: znc.h:124
EAddrType
Definition: Socket.h:73
const CString & GetCurPath() const
unsigned int GetAnonIPLimit() const
Definition: znc.h:162
const CSockManager & GetManager() const
Definition: znc.h:139
void SetConfigWriteDelay(unsigned int i)
Definition: znc.h:130
CFile * m_pLockFile
Definition: znc.h:293
void AddItem(const K &Item)
This function adds an item to the cache using the default time-to-live value.
Definition: Utils.h:260
CString GetPemLocation() const
unsigned int m_uiConnectDelay
Definition: znc.h:294
CString m_sSSLDHParamFile
Definition: znc.h:287
V * GetItem(const K &Item)
Performs a Cleanup() and returns a pointer to the object, or nullptr.
Definition: Utils.h:308
std::map< CString, TrafficStatsPair > TrafficStatsMap
Definition: znc.h:95
void LeakConnectQueueTimer(CConnectQueueTimer *pTimer)
unsigned int GetConfigWriteDelay() const
Definition: znc.h:176
CString GetSSLCertFile() const
Definition: znc.h:174
const VCString & GetBindHosts() const
Definition: znc.h:155
VCString m_vsMotd
Definition: znc.h:292
TCacheMap< CString > m_sConnectThrottle
Definition: znc.h:305
unsigned long long m_uBytesWritten
Definition: znc.h:300
std::mutex m_mutexConfigState
Definition: znc.h:271
void SetSSLCiphers(const CString &sCiphers)
Definition: znc.h:127
void AuthUser(std::shared_ptr< CAuthBase > AuthClass)
void SetAnonIPLimit(unsigned int i)
Definition: znc.h:120
CString m_sSSLCiphers
Definition: znc.h:288
unsigned int GetTTL() const
Definition: Utils.h:358
bool DelListener(CListener *)
std::pair< unsigned long long, unsigned long long > TrafficStatsPair
Definition: znc.h:94
unsigned long long BytesWritten() const
Definition: znc.h:91
const CString & GetHomePath() const
std::list< CIRCNetwork * > m_lpConnectQueue
Definition: znc.h:301
void ClearTrustedProxies()
EAcceptType
Definition: Listener.h:29
static CString GetCompileOptionsString()
void SetTTL(unsigned int u)
Definition: Utils.h:355
void SetMaxBufferSize(unsigned int i)
Definition: znc.h:119
CString FixupEncoding(const CString &sEncoding) const
enum ConfigState m_eConfigState
Definition: znc.h:270
CString GetSkinName() const
Definition: znc.h:141
const std::map< CString, CUser * > & GetUserMap() const
Definition: znc.h:198
CString m_sSSLProtocols
Definition: znc.h:289
const VCString & GetTrustedProxies() const
Definition: znc.h:156
Definition: Modules.h:1379
bool RemTrustedProxy(const CString &sHost)
CListener * FindListener(u_short uPort, const CString &BindHost, EAddrType eAddr)
bool RehashConfig(CString &sError)
CString m_sStatusPrefix
Definition: znc.h:283
TrafficStatsMap GetNetworkTrafficStats(const CString &sUsername, TrafficStatsPair &Total)
const CString & GetZNCPath() const
CString GetConfPath(bool bAllowMkDir=true) const
unsigned int GetServerThrottle() const
Definition: znc.h:163
void SetConfigState(enum ConfigState e)
Definition: znc.h:111
unsigned int m_uiMaxBufferSize
Definition: znc.h:296
VCString m_vsTrustedProxies
Definition: znc.h:291
CString GetSSLProtocols() const
Definition: znc.h:170
void SetStatusPrefix(const CString &s)
Definition: znc.h:116
bool IsForcingEncoding() const
void AddBytesRead(unsigned long long u)
Definition: znc.h:88
time_t TimeStarted() const
Definition: znc.h:160
unsigned long long BytesRead() const
Definition: znc.h:90
std::map< CString, CUser * > m_msUsers
Definition: znc.h:274
TrafficStatsMap GetTrafficStats(TrafficStatsPair &Users, TrafficStatsPair &ZNC, TrafficStatsPair &Total)
void AddBytesWritten(unsigned long long u)
Definition: znc.h:89
CString GetDHParamLocation() const
void SetSSLCertFile(const CString &sFile)
Definition: znc.h:129
void Broadcast(const CString &sMessage, bool bAdminOnly=false, CUser *pSkipUser=nullptr, CClient *pSkipClient=nullptr)
Definition: FileUtils.h:30
time_t m_TimeStarted
Definition: znc.h:268
Definition: Translation.h:54
Definition: IRCNetwork.h:40
std::vector< CString > VCString
Definition: ZNCString.h:38
bool DeleteUser(const CString &sUsername)
CString GetKeyLocation() const
CSockManager m_Manager
Definition: znc.h:276
bool ParseConfig(const CString &sConfig, CString &sError)
void SetConnectDelay(unsigned int i)
static void DumpConfig(const CConfig *Config)
void DisableConfigTimer()
bool GetServerThrottle(CString sName)
Definition: znc.h:226
String class that is used inside ZNC.
Definition: ZNCString.h:68
bool AddTrustedProxy(const CString &sHost)
bool WriteNewConfig(const CString &sConfigFile)
static CString GetVersion()
void SetSkinName(const CString &s)
Definition: znc.h:115
void SetServerThrottle(unsigned int i)
Definition: znc.h:121
bool AddBindHost(const CString &sHost)
Definition: znc.h:80
CString m_sSkinName
Definition: znc.h:282
ConfigState
Definition: znc.h:46
CString m_sSSLKeyFile
Definition: znc.h:286
CString ExpandConfigPath(const CString &sConfigFile, bool bAllowMkDir=true)
The base class for your own ZNC modules.
Definition: Modules.h:407
bool m_bHideVersion
Definition: znc.h:307
void InitDirs(const CString &sArgvPath, const CString &sDataDir)
bool UpdateModule(const CString &sModule)
Reload a module everywhere.
EDisableProtocol
Definition: Csocket.h:611
CConfigWriteTimer * m_pConfigTimer
Definition: znc.h:310
void EnableConnectQueue()
static CString GetTag(bool bIncludeVersion=true, bool bHTML=false)
void AddMotd(const CString &sMessage)
Definition: znc.h:214
Definition: Listener.h:27
Csock::EDisableProtocol GetDisabledSSLProtocols() const
Definition: znc.h:171
CTranslationDomainRefHolder m_Translation
Definition: znc.h:308
void ResumeConnectQueue()
CConnectQueueTimer * m_pConnectQueueTimer
Definition: znc.h:302
bool SetSSLProtocols(const CString &sProtocols)
void ClearBindHosts()
Definition: znc.h:78
CString GetUptime() const
bool GetHideVersion() const
Definition: znc.h:168
std::vector< CListener * > m_vpListeners
Definition: znc.h:273
A dictionary for strings.
Definition: ZNCString.h:595
CUser * FindUser(const CString &sUsername)
CString m_sSSLCertFile
Definition: znc.h:285
void DisableConnectQueue()
CSockManager & GetManager()
Definition: znc.h:138
bool RemBindHost(const CString &sHost)
Definition: znc.h:82
CString GetSSLCiphers() const
Definition: znc.h:169
CModules * m_pModules
Definition: znc.h:298
unsigned int m_uiConnectPaused
Definition: znc.h:303
VCString m_vsBindHosts
Definition: znc.h:290
unsigned int m_uiConfigWriteDelay
Definition: znc.h:309
enum ConfigState GetConfigState()
Definition: znc.h:134
std::map< CString, CUser * > m_msDelUsers
Definition: znc.h:275
const VCString & GetMotd() const
Definition: znc.h:220
bool IsHostAllowed(const CString &sHostMask) const
void SetMotd(const CString &sMessage)
Definition: znc.h:210
bool m_bProtectWebSessions
Definition: znc.h:306
unsigned int m_uiForceEncoding
Definition: znc.h:304
void AddNetworkToQueue(CIRCNetwork *pNetwork)
bool GetProtectWebSessions() const
Definition: znc.h:167
CZNC & operator=(const CZNC &)=delete
const CString & GetStatusPrefix() const
Definition: znc.h:142
static VCString GetAvailableSSLProtocols()
static void CreateInstance()
CString m_sZNCPath
Definition: znc.h:279
CModules & GetModules()
Definition: znc.h:140
CString m_sCurPath
Definition: znc.h:278
CModule * FindModule(const CString &sModName, const CString &sUsername)
std::list< CIRCNetwork * > & GetConnectionQueue()
Definition: znc.h:232
bool AddUser(CUser *pUser, CString &sErrorRet, bool bStartup=false)
void SetHideVersion(bool b)
Definition: znc.h:125
void BackupConfigOnce(const CString &sSuffix)
unsigned int m_uiAnonIPLimit
Definition: znc.h:295
unsigned int m_uDisabledSSLProtocols
Definition: znc.h:297
CString GetModPath() const
static void DestroyInstance()
void ClearMotd()
Definition: znc.h:219
bool WritePidFile(int iPid)
CString GetUserPath() const
CString m_sConfigFile
Definition: znc.h:281
bool AllowConnectionFrom(const CString &sIP) const
void AddServerThrottle(CString sName)
Definition: znc.h:223