- CmdResult Handle(const char** parameters, int pcnt, User *user)
+ CmdResult Handle(const std::vector<std::string> ¶meters, User *user)
{
if(user->registered == REG_ALL)
return CMD_FAILURE;
{
if(user->registered == REG_ALL)
return CMD_FAILURE;
@@ -77,7+75,7 @@ class CommandWebirc : public Command
user->Extend("cgiirc_realhost", new std::string(user->host));
user->Extend("cgiirc_realip", new std::string(user->GetIPString()));
if (notify)
user->Extend("cgiirc_realhost", new std::string(user->host));
user->Extend("cgiirc_realip", new std::string(user->GetIPString()));
if (notify)
- ServerInstance->SNO->WriteToSnoMask('A', "Connecting user %s detected as using CGI:IRC (%s), changing real host to %s from %s", user->nick, user->host, parameters[2], user->host);
+ ServerInstance->SNO->WriteToSnoMask('A', "Connecting user %s detected as using CGI:IRC (%s), changing real host to %s from %s", user->nick.c_str(), user->host.c_str(), parameters[2].c_str(), user->host.c_str());
user->Extend("cgiirc_webirc_hostname", new std::string(parameters[2]));
user->Extend("cgiirc_webirc_ip", new std::string(parameters[3]));
return CMD_LOCALONLY;
user->Extend("cgiirc_webirc_hostname", new std::string(parameters[2]));
user->Extend("cgiirc_webirc_ip", new std::string(parameters[3]));
return CMD_LOCALONLY;
@@ -110,12+108,13 @@ class CGIResolver : public Resolver
if ((them) && (them == ServerInstance->SE->GetRef(theirfd)))
{
if (notify)
if ((them) && (them == ServerInstance->SE->GetRef(theirfd)))
{
if (notify)
- ServerInstance->SNO->WriteToSnoMask('A', "Connecting user %s detected as using CGI:IRC (%s), changing real host to %s from %s", them->nick, them->host, result.c_str(), typ.c_str());
+ ServerInstance->SNO->WriteToSnoMask('A', "Connecting user %s detected as using CGI:IRC (%s), changing real host to %s from %s", them->nick.c_str(), them->host.c_str(), result.c_str(), typ.c_str());
- strlcpy(them->host, result.c_str(), 63);
- strlcpy(them->dhost, result.c_str(), 63);
- strlcpy(them->ident, "~cgiirc", 8);
+ them->host.assign(result,0, 64);
+ them->dhost.assign(result, 0, 64);
+ them->ident.assign("~cgiirc", 0, 8);
them->InvalidateCache();
them->InvalidateCache();
+ them->CheckLines();
}
}
}
}
@@ -124,7+123,7 @@ class CGIResolver : public Resolver
if ((them) && (them == ServerInstance->SE->GetRef(theirfd)))
{
if (notify)
if ((them) && (them == ServerInstance->SE->GetRef(theirfd)))
{
if (notify)
- ServerInstance->SNO->WriteToSnoMask('A', "Connecting user %s detected as using CGI:IRC (%s), but their host can't be resolved from their %s!", them->nick, them->host,typ.c_str());
+ ServerInstance->SNO->WriteToSnoMask('A', "Connecting user %s detected as using CGI:IRC (%s), but their host can't be resolved from their %s!", them->nick.c_str(), them->host.c_str(), typ.c_str());
/* We were given a IP in the password, we don't do DNS so they get this is as their host as well. */
if(NotifyOpers)
{
/* We were given a IP in the password, we don't do DNS so they get this is as their host as well. */
if(NotifyOpers)
- ServerInstance->SNO->WriteToSnoMask('A', "Connecting user %s detected as using CGI:IRC (%s), changing real host to %s from PASS", user->nick, user->host, user->password);
+ ServerInstance->SNO->WriteToSnoMask('A', "Connecting user %s detected as using CGI:IRC (%s), changing real host to %s from PASS", user->nick.c_str(), user->host.c_str(), user->password.c_str());
- ServerInstance->SNO->WriteToSnoMask('A', "Connecting user %s detected as using CGI:IRC (%s), but i could not resolve their hostname!", user->nick, user->host);
+ ServerInstance->SNO->WriteToSnoMask('A', "Connecting user %s detected as using CGI:IRC (%s), but I could not resolve their hostname!", user->nick.c_str(), user->host.c_str());
}
}
}
}
- *user->password = 0;
-
- /*if(NotifyOpers)
- ServerInstance->SNO->WriteToSnoMask('A', "Connecting user %s detected as using CGI:IRC (%s), changing real host to %s from PASS", user->nick, user->host, user->password);*/
- ServerInstance->SNO->WriteToSnoMask('A', "Connecting user %s detected as using CGI:IRC (%s), but i could not resolve their hostname!", user->nick, user->host);
+ ServerInstance->SNO->WriteToSnoMask('A', "Connecting user %s detected as using CGI:IRC (%s), but I could not resolve their hostname!", user->nick.c_str(), user->host.c_str());