ZNC
trunk
|
#include <IRCNetwork.h>
Public Member Functions | |
CIRCNetwork (CUser *pUser, const CString &sName) | |
CIRCNetwork (CUser *pUser, const CIRCNetwork &Network) | |
~CIRCNetwork () | |
CIRCNetwork (const CIRCNetwork &)=delete | |
CIRCNetwork & | operator= (const CIRCNetwork &)=delete |
void | Clone (const CIRCNetwork &Network, bool bCloneName=true) |
CString | GetNetworkPath () const |
void | DelServers () |
bool | ParseConfig (CConfig *pConfig, CString &sError, bool bUpgrade=false) |
CConfig | ToConfig () const |
void | BounceAllClients () |
bool | IsUserAttached () const |
bool | IsUserOnline () const |
void | ClientConnected (CClient *pClient) |
void | ClientDisconnected (CClient *pClient) |
CUser * | GetUser () const |
const CString & | GetName () const |
bool | IsNetworkAttached () const |
const std::vector< CClient * > & | GetClients () const |
std::vector< CClient * > | FindClients (const CString &sIdentifier) const |
void | SetUser (CUser *pUser) |
bool | SetName (const CString &sName) |
CModules & | GetModules () |
const CModules & | GetModules () const |
bool | PutUser (const CString &sLine, CClient *pClient=nullptr, CClient *pSkipClient=nullptr) |
bool | PutUser (const CMessage &Message, CClient *pClient=nullptr, CClient *pSkipClient=nullptr) |
bool | PutStatus (const CString &sLine, CClient *pClient=nullptr, CClient *pSkipClient=nullptr) |
bool | PutModule (const CString &sModule, const CString &sLine, CClient *pClient=nullptr, CClient *pSkipClient=nullptr) |
const std::vector< CChan * > & | GetChans () const |
CChan * | FindChan (CString sName) const |
std::vector< CChan * > | FindChans (const CString &sWild) const |
bool | AddChan (CChan *pChan) |
bool | AddChan (const CString &sName, bool bInConfig) |
bool | DelChan (const CString &sName) |
bool | MoveChan (const CString &sChan, unsigned int index, CString &sError) |
bool | SwapChans (const CString &sChan1, const CString &sChan2, CString &sError) |
void | JoinChans () |
void | JoinChans (std::set< CChan * > &sChans) |
const std::vector< CQuery * > & | GetQueries () const |
CQuery * | FindQuery (const CString &sName) const |
std::vector< CQuery * > | FindQueries (const CString &sWild) const |
CQuery * | AddQuery (const CString &sName) |
bool | DelQuery (const CString &sName) |
const CString & | GetChanPrefixes () const |
void | SetChanPrefixes (const CString &s) |
bool | IsChan (const CString &sChan) const |
const std::vector< CServer * > & | GetServers () const |
bool | HasServers () const |
CServer * | FindServer (const CString &sName) const |
bool | DelServer (const CString &sName, unsigned short uPort, const CString &sPass) |
bool | AddServer (const CString &sName) |
bool | AddServer (const CString &sName, unsigned short uPort, const CString &sPass="", bool bSSL=false) |
CServer * | GetNextServer (bool bAdvance=true) |
CServer * | GetCurrentServer () const |
void | SetIRCServer (const CString &s) |
bool | SetNextServer (const CServer *pServer) |
bool | IsLastServer () const |
const SCString & | GetTrustedFingerprints () const |
void | AddTrustedFingerprint (const CString &sFP) |
void | DelTrustedFingerprint (const CString &sFP) |
void | ClearTrustedFingerprints () |
void | SetIRCConnectEnabled (bool b) |
bool | GetIRCConnectEnabled () const |
CIRCSock * | GetIRCSock () |
const CIRCSock * | GetIRCSock () const |
const CString & | GetIRCServer () const |
const CNick & | GetIRCNick () const |
void | SetIRCNick (const CNick &n) |
CString | GetCurNick () const |
bool | IsIRCAway () const |
void | SetIRCAway (bool b) |
bool | Connect () |
bool | IsIRCConnected () const |
This method will return whether the user is connected and authenticated to an IRC server. More... | |
void | SetIRCSocket (CIRCSock *pIRCSock) |
void | IRCConnected () |
void | IRCDisconnected () |
void | CheckIRCConnect () |
void | NotifyClientsAboutServerDependentCap (const CString &sCap, bool bValue) |
bool | IsServerCapAccepted (const CString &sCap) const |
bool | PutIRC (const CString &sLine) |
bool | PutIRC (const CMessage &Message) |
void | AddRawBuffer (const CMessage &Format, const CString &sText="") |
void | UpdateRawBuffer (const CString &sCommand, const CMessage &Format, const CString &sText="") |
void | UpdateExactRawBuffer (const CMessage &Format, const CString &sText="") |
void | ClearRawBuffer () |
void | AddRawBuffer (const CString &sFormat, const CString &sText="") |
void | UpdateRawBuffer (const CString &sMatch, const CString &sFormat, const CString &sText="") |
void | UpdateExactRawBuffer (const CString &sFormat, const CString &sText="") |
void | AddMotdBuffer (const CMessage &Format, const CString &sText="") |
void | UpdateMotdBuffer (const CString &sCommand, const CMessage &Format, const CString &sText="") |
void | ClearMotdBuffer () |
void | AddMotdBuffer (const CString &sFormat, const CString &sText="") |
void | UpdateMotdBuffer (const CString &sMatch, const CString &sFormat, const CString &sText="") |
void | AddNoticeBuffer (const CMessage &Format, const CString &sText="") |
void | UpdateNoticeBuffer (const CString &sCommand, const CMessage &Format, const CString &sText="") |
void | ClearNoticeBuffer () |
void | AddNoticeBuffer (const CString &sFormat, const CString &sText="") |
void | UpdateNoticeBuffer (const CString &sMatch, const CString &sFormat, const CString &sText="") |
void | ClearQueryBuffer () |
const CString & | GetNick (const bool bAllowDefault=true) const |
const CString & | GetAltNick (const bool bAllowDefault=true) const |
const CString & | GetIdent (const bool bAllowDefault=true) const |
CString | GetRealName () const |
const CString & | GetBindHost () const |
const CString & | GetEncoding () const |
CString | GetQuitMsg () const |
void | SetNick (const CString &s) |
void | SetAltNick (const CString &s) |
void | SetIdent (const CString &s) |
void | SetRealName (const CString &s) |
void | SetBindHost (const CString &s) |
void | SetEncoding (const CString &s) |
void | SetQuitMsg (const CString &s) |
double | GetFloodRate () const |
unsigned short int | GetFloodBurst () const |
void | SetFloodRate (double fFloodRate) |
void | SetFloodBurst (unsigned short int uFloodBurst) |
unsigned short int | GetJoinDelay () const |
void | SetJoinDelay (unsigned short int uJoinDelay) |
void | SetTrustAllCerts (const bool bTrustAll=false) |
bool | GetTrustAllCerts () const |
void | SetTrustPKI (const bool bTrustPKI=true) |
bool | GetTrustPKI () const |
unsigned long long | BytesRead () const |
unsigned long long | BytesWritten () const |
void | AddBytesRead (unsigned long long u) |
void | AddBytesWritten (unsigned long long u) |
CString | ExpandString (const CString &sStr) const |
CString & | ExpandString (const CString &sStr, CString &sRet) const |
Static Public Member Functions | |
static bool | IsValidNetwork (const CString &sNetwork) |
Protected Attributes | |
CString | m_sName |
CUser * | m_pUser |
CString | m_sNick |
CString | m_sAltNick |
CString | m_sIdent |
CString | m_sRealName |
CString | m_sBindHost |
CString | m_sEncoding |
CString | m_sQuitMsg |
SCString | m_ssTrustedFingerprints |
CModules * | m_pModules |
std::vector< CClient * > | m_vClients |
CIRCSock * | m_pIRCSock |
std::vector< CChan * > | m_vChans |
std::vector< CQuery * > | m_vQueries |
CString | m_sChanPrefixes |
bool | m_bIRCConnectEnabled |
bool | m_bTrustAllCerts |
bool | m_bTrustPKI |
CString | m_sIRCServer |
std::vector< CServer * > | m_vServers |
size_t | m_uServerIdx |
Index in m_vServers of our current server + 1. More... | |
CNick | m_IRCNick |
bool | m_bIRCAway |
double | m_fFloodRate |
Set to -1 to disable protection. More... | |
unsigned short int | m_uFloodBurst |
CBuffer | m_RawBuffer |
CBuffer | m_MotdBuffer |
CBuffer | m_NoticeBuffer |
CIRCNetworkPingTimer * | m_pPingTimer |
CIRCNetworkJoinTimer * | m_pJoinTimer |
unsigned short int | m_uJoinDelay |
unsigned long long | m_uBytesRead |
unsigned long long | m_uBytesWritten |
CIRCNetwork::CIRCNetwork | ( | CUser * | pUser, |
const CIRCNetwork & | Network | ||
) |
CIRCNetwork::~CIRCNetwork | ( | ) |
|
delete |
|
inline |
References m_uBytesRead.
|
inline |
References m_uBytesWritten.
bool CIRCNetwork::AddChan | ( | CChan * | pChan | ) |
bool CIRCNetwork::AddChan | ( | const CString & | sName, |
bool | bInConfig | ||
) |
References CBuffer::AddLine(), and m_MotdBuffer.
References CBuffer::AddLine(), and m_MotdBuffer.
References CBuffer::AddLine(), and m_NoticeBuffer.
References CBuffer::AddLine(), and m_NoticeBuffer.
References CBuffer::AddLine(), and m_RawBuffer.
References CBuffer::AddLine(), and m_RawBuffer.
bool CIRCNetwork::AddServer | ( | const CString & | sName | ) |
bool CIRCNetwork::AddServer | ( | const CString & | sName, |
unsigned short | uPort, | ||
const CString & | sPass = "" , |
||
bool | bSSL = false |
||
) |
|
inline |
References CString::EHEXCOLON, CString::Escape_n(), and m_ssTrustedFingerprints.
void CIRCNetwork::BounceAllClients | ( | ) |
|
inline |
References m_uBytesRead.
|
inline |
References m_uBytesWritten.
void CIRCNetwork::CheckIRCConnect | ( | ) |
|
inline |
References CBuffer::Clear(), and m_MotdBuffer.
|
inline |
References CBuffer::Clear(), and m_NoticeBuffer.
void CIRCNetwork::ClearQueryBuffer | ( | ) |
|
inline |
References CBuffer::Clear(), and m_RawBuffer.
|
inline |
References m_ssTrustedFingerprints.
void CIRCNetwork::ClientConnected | ( | CClient * | pClient | ) |
void CIRCNetwork::ClientDisconnected | ( | CClient * | pClient | ) |
void CIRCNetwork::Clone | ( | const CIRCNetwork & | Network, |
bool | bCloneName = true |
||
) |
bool CIRCNetwork::Connect | ( | ) |
bool CIRCNetwork::DelChan | ( | const CString & | sName | ) |
bool CIRCNetwork::DelQuery | ( | const CString & | sName | ) |
void CIRCNetwork::DelServers | ( | ) |
|
inline |
References m_ssTrustedFingerprints.
const CString& CIRCNetwork::GetAltNick | ( | const bool | bAllowDefault = true | ) | const |
const CString& CIRCNetwork::GetBindHost | ( | ) | const |
|
inline |
References m_sChanPrefixes.
const std::vector<CChan*>& CIRCNetwork::GetChans | ( | ) | const |
|
inline |
References m_vClients.
CString CIRCNetwork::GetCurNick | ( | ) | const |
CServer* CIRCNetwork::GetCurrentServer | ( | ) | const |
const CString& CIRCNetwork::GetEncoding | ( | ) | const |
|
inline |
References m_uFloodBurst.
|
inline |
References m_fFloodRate.
const CString& CIRCNetwork::GetIdent | ( | const bool | bAllowDefault = true | ) | const |
|
inline |
References m_bIRCConnectEnabled.
const CNick& CIRCNetwork::GetIRCNick | ( | ) | const |
const CString& CIRCNetwork::GetIRCServer | ( | ) | const |
|
inline |
References m_pIRCSock.
|
inline |
References m_pIRCSock.
|
inline |
References m_uJoinDelay.
|
inline |
References m_pModules.
|
inline |
References m_pModules.
const CString& CIRCNetwork::GetName | ( | ) | const |
CString CIRCNetwork::GetNetworkPath | ( | ) | const |
CServer* CIRCNetwork::GetNextServer | ( | bool | bAdvance = true | ) |
const CString& CIRCNetwork::GetNick | ( | const bool | bAllowDefault = true | ) | const |
const std::vector<CQuery*>& CIRCNetwork::GetQueries | ( | ) | const |
CString CIRCNetwork::GetQuitMsg | ( | ) | const |
CString CIRCNetwork::GetRealName | ( | ) | const |
const std::vector<CServer*>& CIRCNetwork::GetServers | ( | ) | const |
|
inline |
References m_bTrustAllCerts.
|
inline |
References m_ssTrustedFingerprints.
|
inline |
References m_bTrustPKI.
CUser* CIRCNetwork::GetUser | ( | ) | const |
|
inline |
References m_vServers.
void CIRCNetwork::IRCConnected | ( | ) |
void CIRCNetwork::IRCDisconnected | ( | ) |
bool CIRCNetwork::IsChan | ( | const CString & | sChan | ) | const |
|
inline |
References m_bIRCAway.
bool CIRCNetwork::IsIRCConnected | ( | ) | const |
This method will return whether the user is connected and authenticated to an IRC server.
bool CIRCNetwork::IsLastServer | ( | ) | const |
|
inline |
References m_vClients.
bool CIRCNetwork::IsServerCapAccepted | ( | const CString & | sCap | ) | const |
|
inline |
References m_vClients.
bool CIRCNetwork::IsUserOnline | ( | ) | const |
|
static |
void CIRCNetwork::JoinChans | ( | ) |
void CIRCNetwork::JoinChans | ( | std::set< CChan * > & | sChans | ) |
void CIRCNetwork::NotifyClientsAboutServerDependentCap | ( | const CString & | sCap, |
bool | bValue | ||
) |
|
delete |
bool CIRCNetwork::PutIRC | ( | const CMessage & | Message | ) |
bool CIRCNetwork::PutIRC | ( | const CString & | sLine | ) |
bool CIRCNetwork::PutModule | ( | const CString & | sModule, |
const CString & | sLine, | ||
CClient * | pClient = nullptr , |
||
CClient * | pSkipClient = nullptr |
||
) |
bool CIRCNetwork::PutStatus | ( | const CString & | sLine, |
CClient * | pClient = nullptr , |
||
CClient * | pSkipClient = nullptr |
||
) |
bool CIRCNetwork::PutUser | ( | const CMessage & | Message, |
CClient * | pClient = nullptr , |
||
CClient * | pSkipClient = nullptr |
||
) |
bool CIRCNetwork::PutUser | ( | const CString & | sLine, |
CClient * | pClient = nullptr , |
||
CClient * | pSkipClient = nullptr |
||
) |
void CIRCNetwork::SetAltNick | ( | const CString & | s | ) |
void CIRCNetwork::SetBindHost | ( | const CString & | s | ) |
|
inline |
References m_sChanPrefixes.
void CIRCNetwork::SetEncoding | ( | const CString & | s | ) |
|
inline |
References m_uFloodBurst.
|
inline |
References m_fFloodRate.
void CIRCNetwork::SetIdent | ( | const CString & | s | ) |
|
inline |
References m_bIRCAway.
void CIRCNetwork::SetIRCConnectEnabled | ( | bool | b | ) |
void CIRCNetwork::SetIRCNick | ( | const CNick & | n | ) |
void CIRCNetwork::SetIRCServer | ( | const CString & | s | ) |
void CIRCNetwork::SetIRCSocket | ( | CIRCSock * | pIRCSock | ) |
|
inline |
References m_uJoinDelay.
bool CIRCNetwork::SetName | ( | const CString & | sName | ) |
bool CIRCNetwork::SetNextServer | ( | const CServer * | pServer | ) |
void CIRCNetwork::SetNick | ( | const CString & | s | ) |
void CIRCNetwork::SetQuitMsg | ( | const CString & | s | ) |
void CIRCNetwork::SetRealName | ( | const CString & | s | ) |
|
inline |
References m_bTrustAllCerts.
|
inline |
References m_bTrustPKI.
void CIRCNetwork::SetUser | ( | CUser * | pUser | ) |
CConfig CIRCNetwork::ToConfig | ( | ) | const |
|
inline |
References m_RawBuffer, and CBuffer::UpdateExactLine().
|
inline |
References m_RawBuffer, and CBuffer::UpdateExactLine().
|
inline |
References m_MotdBuffer, and CBuffer::UpdateLine().
|
inline |
References m_MotdBuffer, and CBuffer::UpdateLine().
|
inline |
References m_NoticeBuffer, and CBuffer::UpdateLine().
|
inline |
References m_NoticeBuffer, and CBuffer::UpdateLine().
|
inline |
References m_RawBuffer, and CBuffer::UpdateLine().
|
inline |
References m_RawBuffer, and CBuffer::UpdateLine().
|
protected |
Referenced by IsIRCAway(), and SetIRCAway().
|
protected |
Referenced by GetIRCConnectEnabled().
|
protected |
Referenced by GetTrustAllCerts(), and SetTrustAllCerts().
|
protected |
Referenced by GetTrustPKI(), and SetTrustPKI().
|
protected |
Set to -1 to disable protection.
Referenced by GetFloodRate(), and SetFloodRate().
|
protected |
|
protected |
Referenced by AddMotdBuffer(), ClearMotdBuffer(), and UpdateMotdBuffer().
|
protected |
Referenced by AddNoticeBuffer(), ClearNoticeBuffer(), and UpdateNoticeBuffer().
|
protected |
Referenced by GetIRCSock().
|
protected |
|
protected |
Referenced by GetModules().
|
protected |
|
protected |
|
protected |
Referenced by AddRawBuffer(), ClearRawBuffer(), UpdateExactRawBuffer(), and UpdateRawBuffer().
|
protected |
|
protected |
|
protected |
Referenced by GetChanPrefixes(), and SetChanPrefixes().
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
Referenced by AddTrustedFingerprint(), ClearTrustedFingerprints(), DelTrustedFingerprint(), and GetTrustedFingerprints().
|
protected |
Referenced by AddBytesRead(), and BytesRead().
|
protected |
Referenced by AddBytesWritten(), and BytesWritten().
|
protected |
Referenced by GetFloodBurst(), and SetFloodBurst().
|
protected |
Referenced by GetJoinDelay(), and SetJoinDelay().
|
protected |
Index in m_vServers of our current server + 1.
|
protected |
|
protected |
Referenced by GetClients(), IsNetworkAttached(), and IsUserAttached().
|
protected |
|
protected |
Referenced by HasServers().