diff options
author | w00t <w00t@e03df62e-2008-0410-955e-edbf42e46eb7> | 2009-08-14 20:43:46 +0000 |
---|---|---|
committer | w00t <w00t@e03df62e-2008-0410-955e-edbf42e46eb7> | 2009-08-14 20:43:46 +0000 |
commit | 0740e2b8e5d619bb3babbd143e99d8a77a9062ec (patch) | |
tree | 5848ea61d783baf52ed96b23f420a87ed4ba92d0 | |
parent | ff02ab2e930c25755d211d25ad809ff234363214 (diff) |
Make ident handling consistant: use ChangeIdent for all ident manipulation. This fixes cache bugs properly.
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11518 e03df62e-2008-0410-955e-edbf42e46eb7
-rw-r--r-- | src/commands/cmd_user.cpp | 2 | ||||
-rw-r--r-- | src/modules/m_ident.cpp | 4 |
2 files changed, 2 insertions, 4 deletions
diff --git a/src/commands/cmd_user.cpp b/src/commands/cmd_user.cpp index e2777e8c8..833a9b275 100644 --- a/src/commands/cmd_user.cpp +++ b/src/commands/cmd_user.cpp @@ -40,7 +40,7 @@ CmdResult CommandUser::Handle (const std::vector<std::string>& parameters, User * ~ character, and +1 for null termination, therefore we can safely use up to * IDENTMAX here. */ - user->ident.assign(parameters[0], 0, ServerInstance->Config->Limits.IdentMax); + user->ChangeIdent(parameters[0].c_str()); user->fullname.assign(parameters[3].empty() ? std::string("No info") : parameters[3], 0, ServerInstance->Config->Limits.MaxGecos); user->registered = (user->registered | REG_USER); } diff --git a/src/modules/m_ident.cpp b/src/modules/m_ident.cpp index 71767e554..d5ca20836 100644 --- a/src/modules/m_ident.cpp +++ b/src/modules/m_ident.cpp @@ -452,9 +452,7 @@ class ModuleIdent : public Module user->WriteServ("NOTICE Auth :*** Could not find your ident, using %s instead.", isock->GetResult()); /* Copy the ident string to the user */ - std::string ident; - ident.assign(isock->GetResult(), 0, ServerInstance->Config->Limits.IdentMax + 1); - user->ChangeIdent(ident.c_str()); + user->ChangeIdent(isock->GetResult()); /* The user isnt actually disconnecting, we call this to clean up the user */ OnUserDisconnect(user); |