if (params.size() == 1)
{
userrec* x = Srv->FindNick(params[0]);
- if (x->fd > -1)
+ if ((x) && (x->fd > -1))
{
userrec* x = Srv->FindNick(params[0]);
log(DEBUG,"Got IDLE");
{
std::string who_did_the_whois = params[0];
userrec* who_to_send_to = Srv->FindNick(who_did_the_whois);
- if (who_to_send_to->fd > -1)
+ if ((who_to_send_to) && (who_to_send_to->fd > -1))
{
log(DEBUG,"Got final IDLE");
// an incoming reply to a whois we sent out
{
std::string Version = found->GetVersion();
WriteServ(user->fd,"351 %s :%s",user->nick,Version.c_str());
+ if (found == TreeRoot)
+ {
+ std::stringstream out(Config->data005);
+ std::string token = "";
+ std::string line5 = "";
+ int token_counter = 0;
+ while (!out.eof())
+ {
+ out >> token;
+ line5 = line5 + token + " ";
+ token_counter++;
+ if ((token_counter >= 13) || (out.eof() == true))
+ {
+ WriteServ(user->fd,"005 %s %s:are supported by this server",user->nick,line5.c_str());
+ line5 = "";
+ token_counter = 0;
+ }
+ }
+ }
}
else
{