server = (char*)FindServerNamePtr(Config->ServerName);
reset_due = TIME;
lines_in = fd = lastping = signon = idle_lastmsg = nping = registered = 0;
- timeout = flood = port = bytes_in = bytes_out = cmds_in = cmds_out = 0;
+ modebits = timeout = flood = port = bytes_in = bytes_out = cmds_in = cmds_out = 0;
haspassed = dns_done = false;
recvq = "";
sendq = "";
chans.clear();
invites.clear();
+ chans.resize(MAXCHANS);
+ for (unsigned int n = 0; n < MAXCHANS; n++)
+ {
+ ucrec* x = new ucrec();
+ chans[n] = x;
+ x->channel = NULL;
+ x->uc_modes = 0;
+ }
}
userrec::~userrec()
{
+ for (std::vector<ucrec*>::iterator n = chans.begin(); n != chans.end(); n++)
+ {
+ ucrec* x = (ucrec*)*n;
+ delete x;
+ }
}
void userrec::MakeHost(char* nhost)
}
}
-bool userrec::HasPermission(std::string &command)
+bool userrec::HasPermission(const std::string &command)
{
char* mycmd;
char* savept;
}
-bool userrec::AddBuffer(std::string a)
+bool userrec::AddBuffer(const std::string &a)
{
std::string b = "";
char* n = (char*)a.c_str();
return ret;
}
-void userrec::AddWriteBuf(std::string data)
+void userrec::AddWriteBuf(const std::string &data)
{
- if (this->GetWriteError() != "")
+ if (*this->GetWriteError())
return;
if (sendq.length() + data.length() > (unsigned)this->sendqmax)
{
}
}
-void userrec::SetWriteError(std::string error)
+void userrec::SetWriteError(const std::string &error)
{
log(DEBUG,"Setting error string for %s to '%s'",this->nick,error.c_str());
// don't try to set the error twice, its already set take the first string.
this->WriteError = error;
}
-std::string userrec::GetWriteError()
+const char* userrec::GetWriteError()
{
- return this->WriteError;
+ return this->WriteError.c_str();
}
void AddOper(userrec* user)
clientlist[tempnick]->sendqmax = class_sqmax;
clientlist[tempnick]->recvqmax = class_rqmax;
- ucrec a;
- a.channel = NULL;
- a.uc_modes = 0;
- clientlist[tempnick]->chans.resize(MAXCHANS);
-
fd_ref_table[socket] = clientlist[tempnick];
local_users.push_back(clientlist[tempnick]);
}
}
}
-