X-Git-Url: https://git.netwichtig.de/gitweb/?a=blobdiff_plain;f=src%2Fmodules%2Fm_spanningtree%2Fuid.cpp;h=905061cc73e6877d7a59db0af98027e69b766b4b;hb=93fa544b2671b078cf81ac04fbb4b48d5e2d1677;hp=a41fe408d990a3525cd6d97863a878f2720a4c64;hpb=5267fb9d362aeb326c9e64f7171c957f76776f90;p=user%2Fhenk%2Fcode%2Finspircd.git diff --git a/src/modules/m_spanningtree/uid.cpp b/src/modules/m_spanningtree/uid.cpp index a41fe408d..905061cc7 100644 --- a/src/modules/m_spanningtree/uid.cpp +++ b/src/modules/m_spanningtree/uid.cpp @@ -50,12 +50,8 @@ CmdResult CommandUID::HandleServer(TreeServer* remoteserver, std::vectorWriteFrom(collideswith, "NICK %s", collideswith->uuid.c_str()); - collideswith->WriteNumeric(ERR_NICKNAMEINUSE, collideswith->nick, "Nickname overruled."); - - // Clear the bit before calling User::ChangeNick() to make it NOT run the OnUserPostNick() hook - collideswith->registered &= ~REG_NICK; - collideswith->ChangeNick(collideswith->uuid); + LocalUser* const localuser = static_cast(collideswith); + localuser->OverruleNick(); } else if (collideswith) { @@ -77,8 +73,8 @@ CmdResult CommandUID::HandleServer(TreeServer* remoteserver, std::vectorUsers->clientlist[params[2]] = _new; _new->nick = params[2]; - _new->host = params[3]; - _new->dhost = params[4]; + _new->ChangeRealHost(params[3], false); + _new->ChangeDisplayedHost(params[4]); _new->ident = params[5]; _new->fullname = params.back(); _new->registered = REG_ALL; @@ -119,7 +115,7 @@ CmdResult CommandUID::HandleServer(TreeServer* remoteserver, std::vectorSetMode(mh, true); } - _new->SetClientIP(params[6].c_str()); + _new->SetClientIP(params[6]); ServerInstance->Users->AddClone(_new); remoteserver->UserCount++; @@ -161,11 +157,11 @@ CommandUID::Builder::Builder(User* user) push(user->uuid); push_int(user->age); push(user->nick); - push(user->host); - push(user->dhost); + push(user->GetRealHost()); + push(user->GetDisplayedHost()); push(user->ident); push(user->GetIPString()); push_int(user->signon); - push('+').push_raw(user->FormatModes(true)); + push(user->GetModeLetters(true)); push_last(user->fullname); }