From 428a5e3d0f5060d43c56a8a8595c8102241ce7ea Mon Sep 17 00:00:00 2001 From: Boleslaw Tokarski Date: Mon, 8 Oct 2012 15:09:09 +0200 Subject: Allows to use user->ident string instead of user->nick for NickServ. --- src/modules/m_passforward.cpp | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) (limited to 'src/modules') diff --git a/src/modules/m_passforward.cpp b/src/modules/m_passforward.cpp index bf09c1f6e..fb7bae234 100644 --- a/src/modules/m_passforward.cpp +++ b/src/modules/m_passforward.cpp @@ -47,7 +47,7 @@ class ModulePassForward : public Module forwardcmd = Conf.ReadValue("passforward", "cmd", "PRIVMSG $nickrequired :IDENTIFY $pass", 0); } - void FormatStr(std::string& result, const std::string& format, const std::string &nick, const std::string &pass) + void FormatStr(std::string& result, const std::string& format, const LocalUser* user) { for (unsigned int i = 0; i < format.length(); i++) { @@ -61,12 +61,17 @@ class ModulePassForward : public Module } else if (format.substr(i, 5) == "$nick") { - result.append(nick); + result.append(user->nick); + i += 4; + } + else if (format.substr(i, 5) == "$user") + { + result.append(user->ident); i += 4; } else if (format.substr(i,5) == "$pass") { - result.append(pass); + result.append(user->password); i += 4; } else @@ -92,11 +97,11 @@ class ModulePassForward : public Module } std::string tmp; - FormatStr(tmp,forwardmsg, user->nick, user->password); + FormatStr(tmp,forwardmsg, user); user->WriteServ(tmp); tmp.clear(); - FormatStr(tmp,forwardcmd, user->nick, user->password); + FormatStr(tmp,forwardcmd, user); ServerInstance->Parser->ProcessBuffer(tmp,user); } }; -- cgit v1.2.3