* | Inspire Internet Relay Chat Daemon |
* +------------------------------------+
*
- * InspIRCd: (C) 2002-2008 InspIRCd Development Team
+ * InspIRCd: (C) 2002-2009 InspIRCd Development Team
* See: http://www.inspircd.org/wiki/index.php/Credits
*
* This program is free but copyrighted software; see
User::User(InspIRCd* Instance, const std::string &uid) : ServerInstance(Instance)
{
server = (char*)Instance->FindServerNamePtr(Instance->Config->ServerName);
- reset_due = ServerInstance->Time();
age = ServerInstance->Time();
Penalty = 0;
- lines_in = lastping = signon = idle_lastmsg = nping = registered = 0;
+ lastping = signon = idle_lastmsg = nping = registered = 0;
bytes_in = bytes_out = cmds_in = cmds_out = 0;
quietquit = quitting = exempt = haspassed = dns_done = false;
fd = -1;
if (AllowedPrivs->find(privstr) != AllowedPrivs->end())
{
- ServerInstance->Logs->Log("PRIVS", DEBUG, "I do have it.");
return true;
}
else if (AllowedPrivs->find("*") != AllowedPrivs->end())
{
- ServerInstance->Logs->Log("PRIVS", DEBUG, "I allow all.");
return true;
}
if (noisy)
this->WriteServ("NOTICE %s :Oper type %s does not have access to priv %s", this->nick.c_str(), this->oper.c_str(), privstr.c_str());
- ServerInstance->Logs->Log("PRIVS", DEBUG, "I don't have it...");
return false;
}
*/
this->oper.clear();
+
/* Remove all oper only modes from the user when the deoper - Bug #466*/
std::string moderemove("-");
moderemove += letter;
}
+
std::vector<std::string> parameters;
parameters.push_back(this->nick);
parameters.push_back(moderemove);
ServerInstance->Parser->CallHandler("MODE", parameters, this);
-
+
/* remove the user from the oper list. Will remove multiple entries as a safeguard against bug #404 */
ServerInstance->Users->all_opers.remove(this);
AllowedUserModes.reset();
AllowedChanModes.reset();
+ this->modes[UM_OPERATOR] = 0;
}
}
this->InvalidateCache();
+ this->Extend("NICKForced", "Enabled");
+
FOREACH_RESULT(I_OnUserPreNick,OnUserPreNick(this, newnick));
+ this->Shrink("NICKForced");
+
if (MOD_RESULT)
{
ServerInstance->stats->statsCollisions++;