diff --git a/src/ClientCommand.cpp b/src/ClientCommand.cpp index d943905e..a9e92677 100644 --- a/src/ClientCommand.cpp +++ b/src/ClientCommand.cpp @@ -89,20 +89,20 @@ void CClient::UserCommand(CString& sLine) { Table.AddColumn("Ident"); Table.AddColumn("Host"); - for (map::const_iterator a = msNicks.begin(); a != msNicks.end(); ++a) { + for (const auto& it : msNicks) { Table.AddRow(); for (unsigned int b = 0; b < sPerms.size(); b++) { - if (a->second.HasPerm(sPerms[b])) { + if (it.second.HasPerm(sPerms[b])) { CString sPerm; sPerm += sPerms[b]; Table.SetCell(sPerm, sPerm); } } - Table.SetCell("Nick", a->second.GetNick()); - Table.SetCell("Ident", a->second.GetIdent()); - Table.SetCell("Host", a->second.GetHost()); + Table.SetCell("Nick", it.second.GetNick()); + Table.SetCell("Ident", it.second.GetIdent()); + Table.SetCell("Host", it.second.GetHost()); } PutStatus(Table); @@ -190,13 +190,13 @@ void CClient::UserCommand(CString& sLine) { Table.AddColumn("Network"); Table.AddColumn("Identifier"); - for (unsigned int a = 0; a < vClients.size(); a++) { + for (const CClient* pClient : vClients) { Table.AddRow(); - Table.SetCell("Host", vClients[a]->GetRemoteIP()); - if (vClients[a]->GetNetwork()) { - Table.SetCell("Network", vClients[a]->GetNetwork()->GetName()); + Table.SetCell("Host", pClient->GetRemoteIP()); + if (pClient->GetNetwork()) { + Table.SetCell("Network", pClient->GetNetwork()->GetName()); } - Table.SetCell("Identifier", vClients[a]->GetIdentifier()); + Table.SetCell("Identifier", pClient->GetIdentifier()); } PutStatus(Table); @@ -207,11 +207,11 @@ void CClient::UserCommand(CString& sLine) { Table.AddColumn("Networks"); Table.AddColumn("Clients"); - for (map::const_iterator it = msUsers.begin(); it != msUsers.end(); ++it) { + for (const auto& it : msUsers) { Table.AddRow(); - Table.SetCell("Username", it->first); - Table.SetCell("Networks", CString(it->second->GetNetworks().size())); - Table.SetCell("Clients", CString(it->second->GetAllClients().size())); + Table.SetCell("Username", it.first); + Table.SetCell("Networks", CString(it.second->GetNetworks().size())); + Table.SetCell("Clients", CString(it.second->GetAllClients().size())); } PutStatus(Table); @@ -226,18 +226,17 @@ void CClient::UserCommand(CString& sLine) { Table.AddColumn("IRC User"); Table.AddColumn("Channels"); - for (map::const_iterator it = msUsers.begin(); it != msUsers.end(); ++it) { + for (const auto& it : msUsers) { Table.AddRow(); - Table.SetCell("Username", it->first); + Table.SetCell("Username", it.first); Table.SetCell("Network", "N/A"); - Table.SetCell("Clients", CString(it->second->GetUserClients().size())); + Table.SetCell("Clients", CString(it.second->GetUserClients().size())); - const vector& vNetworks = it->second->GetNetworks(); + const vector& vNetworks = it.second->GetNetworks(); - for (size_t a = 0; a < vNetworks.size(); ++a) { - CIRCNetwork* pNetwork = vNetworks[a]; + for (const CIRCNetwork* pNetwork : vNetworks) { Table.AddRow(); - if (a == vNetworks.size() - 1) { + if (pNetwork == vNetworks.back()) { Table.SetCell("Username", "`-"); } else { Table.SetCell("Username", "|-"); @@ -483,11 +482,10 @@ void CClient::UserCommand(CString& sLine) { unsigned int uNumDetached = 0, uNumDisabled = 0, uNumJoined = 0; - for (unsigned int a = 0; a < vChans.size(); a++) { - const CChan* pChan = vChans[a]; + for (const CChan *pChan : vChans) { Table.AddRow(); Table.SetCell("Name", pChan->GetPermStr() + pChan->GetName()); - Table.SetCell("Status", ((vChans[a]->IsOn()) ? ((vChans[a]->IsDetached()) ? "Detached" : "Joined") : ((vChans[a]->IsDisabled()) ? "Disabled" : "Trying"))); + Table.SetCell("Status", ((pChan->IsOn()) ? ((pChan->IsDetached()) ? "Detached" : "Joined") : ((pChan->IsDisabled()) ? "Disabled" : "Trying"))); Table.SetCell("Conf", CString((pChan->InConfig()) ? "yes" : "")); Table.SetCell("Buf", CString((pChan->HasBufferCountSet()) ? "*" : "") + CString(pChan->GetBufferCount())); Table.SetCell("Clear", CString((pChan->HasAutoClearChanBufferSet()) ? "*" : "") + CString((pChan->AutoClearChanBuffer()) ? "yes" : "")); @@ -571,8 +569,7 @@ void CClient::UserCommand(CString& sLine) { Table.AddColumn("IRC User"); Table.AddColumn("Channels"); - for (size_t a = 0; a < vNetworks.size(); a++) { - CIRCNetwork* pNetwork = vNetworks[a]; + for (const CIRCNetwork* pNetwork : vNetworks) { Table.AddRow(); Table.SetCell("Network", pNetwork->GetName()); if (pNetwork->IsIRCConnected()) { @@ -636,9 +633,9 @@ void CClient::UserCommand(CString& sLine) { } const CModules& vMods = pOldNetwork->GetModules(); - for (CModules::const_iterator i = vMods.begin(); i != vMods.end(); ++i) { - CString sOldModPath = pOldNetwork->GetNetworkPath() + "/moddata/" + (*i)->GetModName(); - CString sNewModPath = pNewUser->GetUserPath() + "/networks/" + sNewNetwork + "/moddata/" + (*i)->GetModName(); + for (CModule* pMod : vMods) { + CString sOldModPath = pOldNetwork->GetNetworkPath() + "/moddata/" + pMod->GetModName(); + CString sNewModPath = pNewUser->GetUserPath() + "/networks/" + sNewNetwork + "/moddata/" + pMod->GetModName(); CDir oldDir(sOldModPath); for (CDir::iterator it = oldDir.begin(); it != oldDir.end(); ++it) { @@ -648,7 +645,7 @@ void CClient::UserCommand(CString& sLine) { } } - (*i)->MoveRegistry(sNewModPath); + pMod->MoveRegistry(sNewModPath); } CString sNetworkAddError; @@ -749,8 +746,7 @@ void CClient::UserCommand(CString& sLine) { Table.AddColumn("SSL"); Table.AddColumn("Pass"); - for (unsigned int a = 0; a < vServers.size(); a++) { - CServer* pServer = vServers[a]; + for (const CServer* pServer : vServers) { Table.AddRow(); Table.SetCell("Host", pServer->GetName() + (pServer == pCurServ ? "*" : "")); Table.SetCell("Port", CString(pServer->GetPort())); @@ -812,8 +808,7 @@ void CClient::UserCommand(CString& sLine) { Table.AddColumn("Set By"); Table.AddColumn("Topic"); - for (unsigned int a = 0; a < vChans.size(); a++) { - CChan* pChan = vChans[a]; + for (const CChan* pChan : vChans) { Table.AddRow(); Table.SetCell("Name", pChan->GetName()); Table.SetCell("Set By", pChan->GetTopicOwner()); @@ -833,10 +828,10 @@ void CClient::UserCommand(CString& sLine) { GTable.AddColumn("Name"); GTable.AddColumn("Arguments"); - for (unsigned int b = 0; b < GModules.size(); b++) { + for (const CModule* pMod : GModules) { GTable.AddRow(); - GTable.SetCell("Name", GModules[b]->GetModName()); - GTable.SetCell("Arguments", GModules[b]->GetArgs()); + GTable.SetCell("Name", pMod->GetModName()); + GTable.SetCell("Arguments", pMod->GetArgs()); } PutStatus(GTable); @@ -853,10 +848,10 @@ void CClient::UserCommand(CString& sLine) { Table.AddColumn("Name"); Table.AddColumn("Arguments"); - for (unsigned int b = 0; b < Modules.size(); b++) { + for (const CModule* pMod : Modules) { Table.AddRow(); - Table.SetCell("Name", Modules[b]->GetModName()); - Table.SetCell("Arguments", Modules[b]->GetArgs()); + Table.SetCell("Name", pMod->GetModName()); + Table.SetCell("Arguments", pMod->GetArgs()); } PutStatus(Table); @@ -872,10 +867,10 @@ void CClient::UserCommand(CString& sLine) { Table.AddColumn("Name"); Table.AddColumn("Arguments"); - for (unsigned int b = 0; b < NetworkModules.size(); b++) { + for (const CModule* pMod : NetworkModules) { Table.AddRow(); - Table.SetCell("Name", NetworkModules[b]->GetModName()); - Table.SetCell("Arguments", NetworkModules[b]->GetArgs()); + Table.SetCell("Name", pMod->GetModName()); + Table.SetCell("Arguments", pMod->GetArgs()); } PutStatus(Table); @@ -900,10 +895,8 @@ void CClient::UserCommand(CString& sLine) { CTable GTable; GTable.AddColumn("Name"); GTable.AddColumn("Description"); - set::iterator it; - for (it = ssGlobalMods.begin(); it != ssGlobalMods.end(); ++it) { - const CModInfo& Info = *it; + for (const CModInfo& Info : ssGlobalMods) { GTable.AddRow(); GTable.SetCell("Name", (CZNC::Get().GetModules().FindModule(Info.GetName()) ? "*" : " ") + Info.GetName()); GTable.SetCell("Description", Info.GetDescription().Ellipsize(128)); @@ -923,10 +916,8 @@ void CClient::UserCommand(CString& sLine) { CTable Table; Table.AddColumn("Name"); Table.AddColumn("Description"); - set::iterator it; - for (it = ssUserMods.begin(); it != ssUserMods.end(); ++it) { - const CModInfo& Info = *it; + for (const CModInfo& Info : ssUserMods) { Table.AddRow(); Table.SetCell("Name", (m_pUser->GetModules().FindModule(Info.GetName()) ? "*" : " ") + Info.GetName()); Table.SetCell("Description", Info.GetDescription().Ellipsize(128)); @@ -945,10 +936,8 @@ void CClient::UserCommand(CString& sLine) { CTable Table; Table.AddColumn("Name"); Table.AddColumn("Description"); - set::const_iterator it; - for (it = ssNetworkMods.begin(); it != ssNetworkMods.end(); ++it) { - const CModInfo& Info = *it; + for (const CModInfo& Info : ssNetworkMods) { Table.AddRow(); Table.SetCell("Name", ((m_pNetwork && m_pNetwork->GetModules().FindModule(Info.GetName())) ? "*" : " ") + Info.GetName()); Table.SetCell("Description", Info.GetDescription().Ellipsize(128)); @@ -1218,10 +1207,9 @@ void CClient::UserCommand(CString& sLine) { CTable Table; Table.AddColumn("Host"); - VCString::const_iterator it; - for (it = vsHosts.begin(); it != vsHosts.end(); ++it) { + for (const CString& sHost : vsHosts) { Table.AddRow(); - Table.SetCell("Host", *it); + Table.SetCell("Host", sHost); } PutStatus(Table); } else if ((sCommand.Equals("SETBINDHOST") || sCommand.Equals("SETVHOST")) && (m_pUser->IsAdmin() || !m_pUser->DenySetBindHost())) { @@ -1229,25 +1217,24 @@ void CClient::UserCommand(CString& sLine) { PutStatus("You must be connected with a network to use this command. Try SetUserBindHost instead"); return; } - CString sHost = sLine.Token(1); + CString sArg = sLine.Token(1); - if (sHost.empty()) { + if (sArg.empty()) { PutStatus("Usage: SetBindHost "); return; } - if (sHost.Equals(m_pNetwork->GetBindHost())) { + if (sArg.Equals(m_pNetwork->GetBindHost())) { PutStatus("You already have this bind host!"); return; } const VCString& vsHosts = CZNC::Get().GetBindHosts(); if (!m_pUser->IsAdmin() && !vsHosts.empty()) { - VCString::const_iterator it; bool bFound = false; - for (it = vsHosts.begin(); it != vsHosts.end(); ++it) { - if (sHost.Equals(*it)) { + for (const CString& sHost : vsHosts) { + if (sArg.Equals(sHost)) { bFound = true; break; } @@ -1259,28 +1246,27 @@ void CClient::UserCommand(CString& sLine) { } } - m_pNetwork->SetBindHost(sHost); + m_pNetwork->SetBindHost(sArg); PutStatus("Set bind host for network [" + m_pNetwork->GetName() + "] to [" + m_pNetwork->GetBindHost() + "]"); } else if (sCommand.Equals("SETUSERBINDHOST") && (m_pUser->IsAdmin() || !m_pUser->DenySetBindHost())) { - CString sHost = sLine.Token(1); + CString sArg = sLine.Token(1); - if (sHost.empty()) { + if (sArg.empty()) { PutStatus("Usage: SetUserBindHost "); return; } - if (sHost.Equals(m_pUser->GetBindHost())) { + if (sArg.Equals(m_pUser->GetBindHost())) { PutStatus("You already have this bind host!"); return; } const VCString& vsHosts = CZNC::Get().GetBindHosts(); if (!m_pUser->IsAdmin() && !vsHosts.empty()) { - VCString::const_iterator it; bool bFound = false; - for (it = vsHosts.begin(); it != vsHosts.end(); ++it) { - if (sHost.Equals(*it)) { + for (const CString& sHost : vsHosts) { + if (sArg.Equals(sHost)) { bFound = true; break; } @@ -1292,7 +1278,7 @@ void CClient::UserCommand(CString& sLine) { } } - m_pUser->SetBindHost(sHost); + m_pUser->SetBindHost(sArg); PutStatus("Set bind host to [" + m_pUser->GetBindHost() + "]"); } else if ((sCommand.Equals("CLEARBINDHOST") || sCommand.Equals("CLEARVHOST")) && (m_pUser->IsAdmin() || !m_pUser->DenySetBindHost())) { if (!m_pNetwork) { @@ -1371,17 +1357,17 @@ void CClient::UserCommand(CString& sLine) { unsigned int uMatches = 0; vector vChans = m_pNetwork->FindChans(sBuffer); - for (vector::const_iterator it = vChans.begin(); it != vChans.end(); ++it) { + for (CChan* pChan : vChans) { uMatches++; - (*it)->ClearBuffer(); + pChan->ClearBuffer(); } vector vQueries = m_pNetwork->FindQueries(sBuffer); - for (vector::const_iterator it = vQueries.begin(); it != vQueries.end(); ++it) { + for (CQuery* pQuery : vQueries) { uMatches++; - m_pNetwork->DelQuery((*it)->GetName()); + m_pNetwork->DelQuery(pQuery->GetName()); } PutStatus("[" + CString(uMatches) + "] buffers matching [" + sBuffer + "] have been cleared"); @@ -1391,11 +1377,8 @@ void CClient::UserCommand(CString& sLine) { return; } - vector::const_iterator it; - const vector& vChans = m_pNetwork->GetChans(); - - for (it = vChans.begin(); it != vChans.end(); ++it) { - (*it)->ClearBuffer(); + for (CChan* pChan : m_pNetwork->GetChans()) { + pChan->ClearBuffer(); } PutStatus("All channel buffers have been cleared"); } else if (sCommand.Equals("CLEARALLQUERYBUFFERS")) { @@ -1404,11 +1387,8 @@ void CClient::UserCommand(CString& sLine) { return; } - vector::const_iterator it; - vector VQueries = m_pNetwork->GetQueries(); - - for (it = VQueries.begin(); it != VQueries.end(); ++it) { - m_pNetwork->DelQuery((*it)->GetName()); + for (CQuery* pQuery : m_pNetwork->GetQueries()) { + m_pNetwork->DelQuery(pQuery->GetName()); } PutStatus("All query buffers have been cleared"); } else if (sCommand.Equals("SETBUFFER")) { @@ -1427,18 +1407,18 @@ void CClient::UserCommand(CString& sLine) { unsigned int uLineCount = sLine.Token(2).ToUInt(); unsigned int uMatches = 0, uFail = 0; vector vChans = m_pNetwork->FindChans(sBuffer); - for (vector::const_iterator it = vChans.begin(); it != vChans.end(); ++it) { + for (CChan* pChan : vChans) { uMatches++; - if (!(*it)->SetBufferCount(uLineCount)) + if (!pChan->SetBufferCount(uLineCount)) uFail++; } vector vQueries = m_pNetwork->FindQueries(sBuffer); - for (vector::const_iterator it = vQueries.begin(); it != vQueries.end(); ++it) { + for (CQuery* pQuery : vQueries) { uMatches++; - if (!(*it)->SetBufferCount(uLineCount)) + if (!pQuery->SetBufferCount(uLineCount)) uFail++; } @@ -1451,7 +1431,6 @@ void CClient::UserCommand(CString& sLine) { } else if (m_pUser->IsAdmin() && sCommand.Equals("TRAFFIC")) { CZNC::TrafficStatsPair Users, ZNC, Total; CZNC::TrafficStatsMap traffic = CZNC::Get().GetTrafficStats(Users, ZNC, Total); - CZNC::TrafficStatsMap::const_iterator it; CTable Table; Table.AddColumn("Username"); @@ -1459,12 +1438,12 @@ void CClient::UserCommand(CString& sLine) { Table.AddColumn("Out"); Table.AddColumn("Total"); - for (it = traffic.begin(); it != traffic.end(); ++it) { + for (const auto& it : traffic) { Table.AddRow(); - Table.SetCell("Username", it->first); - Table.SetCell("In", CString::ToByteStr(it->second.first)); - Table.SetCell("Out", CString::ToByteStr(it->second.second)); - Table.SetCell("Total", CString::ToByteStr(it->second.first + it->second.second)); + Table.SetCell("Username", it.first); + Table.SetCell("In", CString::ToByteStr(it.second.first)); + Table.SetCell("Out", CString::ToByteStr(it.second.second)); + Table.SetCell("Total", CString::ToByteStr(it.second.first + it.second.second)); } Table.AddRow(); @@ -1511,18 +1490,18 @@ void CClient::UserPortCommand(CString& sLine) { vector::const_iterator it; const vector& vpListeners = CZNC::Get().GetListeners(); - for (it = vpListeners.begin(); it < vpListeners.end(); ++it) { + for (const CListener* pListener : vpListeners) { Table.AddRow(); - Table.SetCell("Port", CString((*it)->GetPort())); - Table.SetCell("BindHost", ((*it)->GetBindHost().empty() ? CString("*") : (*it)->GetBindHost())); - Table.SetCell("SSL", CString((*it)->IsSSL())); + Table.SetCell("Port", CString(pListener->GetPort())); + Table.SetCell("BindHost", (pListener->GetBindHost().empty() ? CString("*") : pListener->GetBindHost())); + Table.SetCell("SSL", CString(pListener->IsSSL())); - EAddrType eAddr = (*it)->GetAddrType(); + EAddrType eAddr = pListener->GetAddrType(); Table.SetCell("Proto", (eAddr == ADDR_ALL ? "All" : (eAddr == ADDR_IPV4ONLY ? "IPv4" : "IPv6"))); - CListener::EAcceptType eAccept = (*it)->GetAcceptType(); + CListener::EAcceptType eAccept = pListener->GetAcceptType(); Table.SetCell("IRC/Web", (eAccept == CListener::ACCEPT_ALL ? "All" : (eAccept == CListener::ACCEPT_IRC ? "IRC" : "Web"))); - Table.SetCell("URIPrefix", (*it)->GetURIPrefix() + "/"); + Table.SetCell("URIPrefix", pListener->GetURIPrefix() + "/"); } PutStatus(Table);