Implement chghost capability

Interaction with extended-join doesn't yet work correctly, because ZNC
doesn't keep track of everyone's real names
This commit is contained in:
Alexey Sokolov
2024-10-15 11:29:36 +01:00
parent 25b19bb889
commit d49399bbca
7 changed files with 161 additions and 3 deletions

View File

@@ -75,7 +75,8 @@ using std::vector;
} \
}
CClient::CClient() : CIRCSocket(),
CClient::CClient()
: CIRCSocket(),
m_bGotPass(false),
m_bGotNick(false),
m_bGotUser(false),
@@ -87,6 +88,7 @@ CClient::CClient() : CIRCSocket(),
m_bExtendedJoin(false),
m_bNamesx(false),
m_bUHNames(false),
m_bChgHost(false),
m_bAway(false),
m_bServerTime(false),
m_bBatch(false),
@@ -762,6 +764,7 @@ CClient::CoreCaps() {
}},
{"cap-notify",
[](CClient* pClient, bool bVal) { pClient->m_bCapNotify = bVal; }},
{"chghost", [](CClient* pClient, bool bVal) { pClient->m_bChgHost = bVal; }},
};
// For compatibility with older clients