- User* _new = NULL;
- try
- {
- _new = new User(this->ServerInstance, params[0]);
- }
- catch (...)
- {
- SendError("Protocol violation - Duplicate UUID '" + params[0] + "' on introduction of new user");
- return false;
- }
- (*(this->ServerInstance->Users->clientlist))[params[2]] = _new;
- _new->SetFd(FD_MAGIC_NUMBER);
- _new->nick.assign(params[2], 0, MAXBUF);
- _new->host.assign(params[3], 0, 64);
- _new->dhost.assign(params[4], 0, 64);
- _new->server = this->ServerInstance->FindServerNamePtr(remoteserver->GetName().c_str());
- _new->ident.assign(params[5], 0, MAXBUF);
- _new->fullname.assign(params[params.size() - 1], 0, MAXBUF);
+ RemoteUser* _new = new RemoteUser(params[0], remoteserver);
+ ServerInstance->Users->clientlist[params[2]] = _new;
+ _new->nick = params[2];
+ _new->host = params[3];
+ _new->dhost = params[4];
+ _new->ident = params[5];
+ _new->fullname = params.back();