]> git.netwichtig.de Git - user/henk/code/inspircd.git/blobdiff - src/users.cpp
Update a header i left out
[user/henk/code/inspircd.git] / src / users.cpp
index 4ffdeb678ebd4220468aaa03841bd14bea2d7823..f532b60d1c325e776b1820fb499a415be824db44 100644 (file)
@@ -721,7 +721,7 @@ void User::Oper(const std::string &opertype, const std::string &opername)
                this->WriteServ("MODE %s :+o", this->nick.c_str());
                FOREACH_MOD(I_OnOper, OnOper(this, opertype));
                ServerInstance->Logs->Log("OPER", DEFAULT, "%s!%s@%s opered as type: %s", this->nick.c_str(), this->ident.c_str(), this->host.c_str(), opertype.c_str());
-               this->oper.assign(opertype, 0, NICKMAX - 1);
+               this->oper.assign(opertype, 0, 512);
                ServerInstance->Users->all_opers.push_back(this);
 
                opertype_t::iterator iter_opertype = ServerInstance->Config->opertypes.find(this->oper.c_str());
@@ -947,9 +947,11 @@ void User::FullConnect()
 
        /* Trigger LUSERS output, give modules a chance too */
        int MOD_RESULT = 0;
-       FOREACH_RESULT(I_OnPreCommand, OnPreCommand("LUSERS", std::vector<std::string>(), this, true, "LUSERS"));
+       std::string command("LUSERS");
+       std::vector<std::string> parameters;
+       FOREACH_RESULT(I_OnPreCommand, OnPreCommand(command, parameters, this, true, "LUSERS"));
        if (!MOD_RESULT)
-               ServerInstance->CallCommandHandler("LUSERS", std::vector<std::string>(), this);
+               ServerInstance->CallCommandHandler(command, parameters, this);
 
        /*
         * We don't set REG_ALL until triggering OnUserConnect, so some module events don't spew out stuff
@@ -959,6 +961,8 @@ void User::FullConnect()
 
        this->registered = REG_ALL;
 
+       ServerInstance->PI->Introduce(this);
+
        FOREACH_MOD(I_OnPostConnect,OnPostConnect(this));
 
        ServerInstance->SNO->WriteToSnoMask('c',"Client connecting on port %d: %s!%s@%s [%s] [%s]", this->GetPort(), this->nick.c_str(), this->ident.c_str(), this->host.c_str(), this->GetIPString(), this->fullname.c_str());
@@ -1521,7 +1525,7 @@ bool User::ChangeName(const char* gecos)
                        return false;
                FOREACH_MOD(I_OnChangeName,OnChangeName(this,gecos));
        }
-       this->fullname.assign(gecos, 0, MAXGECOS+1);
+       this->fullname.assign(gecos, 0, ServerInstance->Config->Limits.MaxGecos);
 
        return true;
 }
@@ -1573,7 +1577,7 @@ bool User::ChangeIdent(const char* newident)
        if (this->ServerInstance->Config->CycleHosts)
                this->WriteCommonExcept("%s","QUIT :Changing ident");
 
-       this->ident.assign(newident, 0, IDENTMAX + 1);
+       this->ident.assign(newident, 0, ServerInstance->Config->Limits.IdentMax + 1);
 
        this->InvalidateCache();