summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorbrain <brain@e03df62e-2008-0410-955e-edbf42e46eb7>2005-12-20 15:35:46 +0000
committerbrain <brain@e03df62e-2008-0410-955e-edbf42e46eb7>2005-12-20 15:35:46 +0000
commit9a8acb590df6216849e787e08e4651b5f2a81276 (patch)
tree11e158997d29785a38b24b35008f4321c5576ac8 /src
parent130d3dfc9cdee7699561d2a63e09bd89279356c1 (diff)
Fixed to not allow :Abc NICK Abc, where the case of the old and new nick are *identical*
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@2586 e03df62e-2008-0410-955e-edbf42e46eb7
Diffstat (limited to 'src')
-rw-r--r--src/cmd_nick.cpp7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/cmd_nick.cpp b/src/cmd_nick.cpp
index 33960463b..7779926e8 100644
--- a/src/cmd_nick.cpp
+++ b/src/cmd_nick.cpp
@@ -94,6 +94,13 @@ void cmd_nick::Handle (char **parameters, int pcnt, userrec *user)
}
if (irc::string(user->nick) == irc::string(parameters[0]))
{
+ /* If its exactly the same, even case, dont do anything. */
+ if (!strcmp(user->nick,parameters[0]))
+ return;
+ /* Its a change of case. People insisted that they should be
+ * able to do silly things like this even though the RFC says
+ * the nick AAA is the same as the nick aaa.
+ */
log(DEBUG,"old nick is new nick, not updating hash (case change only)");
strlcpy(oldnick,user->nick,NICKMAX);
int MOD_RESULT = 0;