- int collideret = 0;
- /* x is local, who is remote */
- collideret = this->DoCollision(x, who->age, who->ident, who->GetIPString(), who->uuid);
- if (collideret != 1)
- {
- /*
- * Remote client lost, or both lost,
- * parsing this nickchange would be
- * pointless, as the incoming client's
- * server will soon recieve SVSNICK to
- * change its nick to its UID. :)
- * -- w00t
- */
- return true;
- }
-/*
-Old nickname collision logic..
- std::deque<std::string> p;
- p.push_back(params[0]);
- p.push_back(":Nickname collision ("+prefix+" -> "+params[0]+")");
- Utils->DoOneToMany(this->Instance->Config->ServerName,"KILL",p);
- p.clear();
- p.push_back(prefix);
- p.push_back(":Nickname collision");
- Utils->DoOneToMany(this->Instance->Config->ServerName,"KILL",p);
- userrec::QuitUser(this->Instance,x,"Nickname collision ("+prefix+" -> "+params[0]+")");
- userrec* y = this->Instance->FindNick(prefix);
- if (y)
- {
- userrec::QuitUser(this->Instance,y,"Nickname collision");
- }
- return Utils->DoOneToAllButSenderRaw(line,sourceserv,prefix,command,params);
-*/
- }
- }
- // its a user
- target = who->server;
- const char* strparams[127];
- for (unsigned int q = 0; q < params.size(); q++)
- {
- strparams[q] = params[q].c_str();
- }
- switch (this->Instance->CallCommandHandler(command.c_str(), strparams, params.size(), who))
- {
- case CMD_INVALID:
- this->SendError("Unrecognised command '"+std::string(command.c_str())+"' -- possibly loaded mismatched modules");
- return false;
- break;
- case CMD_FAILURE: