mirror of
https://github.com/znc/znc.git
synced 2026-07-05 17:31:06 +02:00
Renamed CUserSock to CClient
git-svn-id: https://znc.svn.sourceforge.net/svnroot/znc/trunk@581 726aef4b-f618-498e-8847-2d620e286838
This commit is contained in:
@@ -52,14 +52,14 @@ public:
|
||||
|
||||
virtual void OnUserAttached() {
|
||||
if (m_spInjectedPrefixes.find(m_pUser) == m_spInjectedPrefixes.end()) {
|
||||
m_pUserSock->PutServ(":" + m_pUser->GetIRCServer() + " 005 " + m_pUser->GetIRCNick().GetNick() + " CHANTYPES=" + m_pUser->GetChanPrefixes() + "~ :are supported by this server.");
|
||||
m_pClient->PutServ(":" + m_pUser->GetIRCServer() + " 005 " + m_pUser->GetIRCNick().GetNick() + " CHANTYPES=" + m_pUser->GetChanPrefixes() + "~ :are supported by this server.");
|
||||
}
|
||||
|
||||
for (map<CString, set<CString> >::iterator it = m_msChans.begin(); it != m_msChans.end(); it++) {
|
||||
set<CString>& ssNicks = it->second;
|
||||
|
||||
if (ssNicks.find(m_pUser->GetUserName()) != ssNicks.end()) {
|
||||
m_pUserSock->PutServ(":" + m_pUser->GetIRCNick().GetNickMask() + " JOIN " + it->first);
|
||||
m_pClient->PutServ(":" + m_pUser->GetIRCNick().GetNickMask() + " JOIN " + it->first);
|
||||
SendNickList(ssNicks, it->first);
|
||||
PutChan(ssNicks, ":*" + GetModName() + "!znc@rottenboy.com MODE " + it->first + " +" + CString(m_pUser->IsAdmin() ? "o" : "v") + " ?" + m_pUser->GetUserName(), true);
|
||||
}
|
||||
@@ -94,7 +94,7 @@ public:
|
||||
}
|
||||
|
||||
if (sChannel.Left(2) != "~#") {
|
||||
m_pUserSock->PutServ(":" + m_pUser->GetIRCServer() + " 403 " + m_pUser->GetIRCNick().GetNick() + " " + sChannel + " :No such channel");
|
||||
m_pClient->PutServ(":" + m_pUser->GetIRCServer() + " 403 " + m_pUser->GetIRCNick().GetNick() + " " + sChannel + " :No such channel");
|
||||
return HALT;
|
||||
}
|
||||
|
||||
@@ -126,7 +126,7 @@ public:
|
||||
}
|
||||
|
||||
if (sChannel.Left(2) != "~#") {
|
||||
m_pUserSock->PutServ(":" + m_pUser->GetIRCServer() + " 403 " + m_pUser->GetIRCNick().GetNick() + " " + sChannel + " :Channels look like ~#znc");
|
||||
m_pClient->PutServ(":" + m_pUser->GetIRCServer() + " 403 " + m_pUser->GetIRCNick().GetNick() + " " + sChannel + " :Channels look like ~#znc");
|
||||
return HALT;
|
||||
}
|
||||
|
||||
@@ -174,7 +174,7 @@ public:
|
||||
|
||||
if (cPrefix == '~') {
|
||||
if (m_msChans.find(sTarget.AsLower()) == m_msChans.end()) {
|
||||
m_pUserSock->PutServ(":" + m_pUser->GetIRCServer() + " 403 " + m_pUser->GetIRCNick().GetNick() + " " + sTarget + " :No such channel");
|
||||
m_pClient->PutServ(":" + m_pUser->GetIRCServer() + " 403 " + m_pUser->GetIRCNick().GetNick() + " " + sTarget + " :No such channel");
|
||||
return HALT;
|
||||
}
|
||||
|
||||
@@ -186,7 +186,7 @@ public:
|
||||
if (pUser) {
|
||||
pUser->PutUser(":?" + m_pUser->GetUserName() + "!" + m_pUser->GetIdent() + "@" + sHost + " PRIVMSG " + pUser->GetIRCNick().GetNick() + " :" + sMessage);
|
||||
} else {
|
||||
m_pUserSock->PutServ(":" + m_pUser->GetIRCServer() + " 403 " + m_pUser->GetIRCNick().GetNick() + " " + sTarget + " :No such znc user: " + sNick + "");
|
||||
m_pClient->PutServ(":" + m_pUser->GetIRCServer() + " 403 " + m_pUser->GetIRCNick().GetNick() + " " + sTarget + " :No such znc user: " + sNick + "");
|
||||
}
|
||||
}
|
||||
|
||||
@@ -258,7 +258,7 @@ public:
|
||||
if (ssNicks.find(it->first) != ssNicks.end()) {
|
||||
if (it->second == m_pUser) {
|
||||
if (bIncludeCurUser) {
|
||||
it->second->PutUser(sLine, NULL, (bIncludeClient ? NULL : m_pUserSock));
|
||||
it->second->PutUser(sLine, NULL, (bIncludeClient ? NULL : m_pClient));
|
||||
}
|
||||
} else {
|
||||
it->second->PutUser(sLine);
|
||||
|
||||
+8
-8
@@ -14,10 +14,10 @@ class CShellMod;
|
||||
|
||||
class CExecSock : public Csock {
|
||||
public:
|
||||
CExecSock(CShellMod* pShellMod, CUserSock* pUserSock, const CString& sExec) : Csock() {
|
||||
CExecSock(CShellMod* pShellMod, CClient* pClient, const CString& sExec) : Csock() {
|
||||
EnableReadLine();
|
||||
m_pParent = pShellMod;
|
||||
m_pUserSock = pUserSock;
|
||||
m_pClient = pClient;
|
||||
int iReadFD, iWriteFD;
|
||||
m_iPid = popen2(iReadFD, iWriteFD, sExec);
|
||||
ConnectFD(iReadFD, iWriteFD, "0.0.0.0:0");
|
||||
@@ -85,7 +85,7 @@ public:
|
||||
return;
|
||||
}
|
||||
private:
|
||||
CUserSock* m_pUserSock;
|
||||
CClient* m_pClient;
|
||||
};
|
||||
|
||||
class CShellMod : public CModule {
|
||||
@@ -188,7 +188,7 @@ public:
|
||||
}
|
||||
|
||||
void RunCommand(const CString& sCommand) {
|
||||
m_pManager->AddSock((Csock*) new CExecSock(this, m_pUserSock, "cd " + m_sPath + " && " + sCommand), "SHELL");
|
||||
m_pManager->AddSock((Csock*) new CExecSock(this, m_pClient, "cd " + m_sPath + " && " + sCommand), "SHELL");
|
||||
}
|
||||
private:
|
||||
CString m_sPath;
|
||||
@@ -207,15 +207,15 @@ void CExecSock::ReadLine(const CString& sData) {
|
||||
a = sLine.find('\t');
|
||||
}
|
||||
|
||||
m_pParent->SetUserSock(m_pUserSock);
|
||||
m_pParent->SetClient(m_pClient);
|
||||
m_pParent->PutShell(sLine);
|
||||
m_pParent->SetUserSock(NULL);
|
||||
m_pParent->SetClient(NULL);
|
||||
}
|
||||
|
||||
void CExecSock::Disconnected() {
|
||||
m_pParent->SetUserSock(m_pUserSock);
|
||||
m_pParent->SetClient(m_pClient);
|
||||
m_pParent->PutShell("znc$");
|
||||
m_pParent->SetUserSock(NULL);
|
||||
m_pParent->SetClient(NULL);
|
||||
}
|
||||
|
||||
MODULEDEFS(CShellMod, "Gives shell access")
|
||||
|
||||
Reference in New Issue
Block a user