* here first, no TS checks need to take place here)
*/
userrec* InUse = ServerInstance->FindNick(parameters[0]);
- if (InUse && (InUse != user) && (ServerInstance->IsNick(parameters[0])))
+ if (InUse && (InUse != user) && ((ServerInstance->IsNick(parameters[0]) || allowinvalid)))
{
if (InUse->registered != REG_ALL)
{
}
}
}
- if ((!ServerInstance->IsNick(parameters[0])) && (IS_LOCAL(user)))
+ if (((!allowinvalid || !ServerInstance->IsNick(parameters[0]))) && (IS_LOCAL(user)))
{
user->WriteServ("432 %s %s :Erroneous Nickname",user->nick,parameters[0]);
return CMD_FAILURE;
}
+CmdResult cmd_nick::HandleInternal(const unsigned int id, const std::deque<classbase*> ¶meters)
+{
+ allowinvalid = (id != 0);
+ return CMD_SUCCESS;
+}
+