#include "inspircd.h"
#include "xline.h"
#include "exitcodes.h"
+#include "commands/cmd_whowas.h"
std::vector<std::string> old_module_names, new_module_names, added_modules, removed_modules;
{
if (!GetIOHook(is))
{
- ServerInstance->Log(DEBUG,"Hooked inspsocket %08x", is);
SocketIOHookModule[is] = iomod;
is->IsIOHooked = true;
return true;
bool NoValidation(ServerConfig* conf, const char* tag, const char* value, ValueItem &data)
{
- conf->GetInstance()->Log(DEBUG,"No validation for <%s:%s>",tag,value);
return true;
}
nspace::hash_map<std::string,command_t*>::iterator cm = ServerInstance->Parser->cmdlist.find(thiscmd);
if (cm != ServerInstance->Parser->cmdlist.end())
{
- ServerInstance->Log(DEBUG,"Disabling command '%s'",cm->second->command.c_str());
cm->second->Disable(true);
}
}
conf->WhoWasMaxKeep = 3600;
conf->GetInstance()->Log(DEFAULT,"WARNING: <whowas:maxkeep> value less than 3600, setting to default 3600");
}
- conf->GetInstance()->Log(DEBUG,"whowas:groupsize:%d maxgroups:%d maxkeep:%d",conf->WhoWasGroupSize,conf->WhoWasMaxGroups,conf->WhoWasMaxKeep);
- irc::whowas::PruneWhoWas(conf->GetInstance(), conf->GetInstance()->Time());
+
+ command_t* whowas_command = conf->GetInstance()->Parser->GetHandler("WHOWAS");
+ if (whowas_command)
+ {
+ std::deque<classbase*> params;
+ whowas_command->HandleInternal(WHOWAS_PRUNE, params);
+ }
+
return true;
}
*/
bool DoneConnect(ServerConfig* conf, const char* tag)
{
- conf->GetInstance()->Log(DEBUG,"DoneConnect called for tag: %s",tag);
return true;
}
bool DoULine(ServerConfig* conf, const char* tag, char** entries, ValueList &values, int* types)
{
const char* server = values[0].GetString();
- conf->GetInstance()->Log(DEBUG,"Read ULINE '%s'",server);
conf->ulines.push_back(server);
return true;
}
{"server", "name", "", new ValueContainerChar (this->ServerName), DT_CHARPTR, ValidateServerName},
{"server", "description", "Configure Me", new ValueContainerChar (this->ServerDesc), DT_CHARPTR, NoValidation},
{"server", "network", "Network", new ValueContainerChar (this->Network), DT_CHARPTR, NoValidation},
- {"admin", "name", "Miss Configured", new ValueContainerChar (this->AdminName), DT_CHARPTR, NoValidation},
+ {"admin", "name", "", new ValueContainerChar (this->AdminName), DT_CHARPTR, NoValidation},
{"admin", "email", "Mis@configu.red", new ValueContainerChar (this->AdminEmail), DT_CHARPTR, NoValidation},
{"admin", "nick", "Misconfigured", new ValueContainerChar (this->AdminNick), DT_CHARPTR, NoValidation},
{"files", "motd", "", new ValueContainerChar (this->motd), DT_CHARPTR, ValidateMotd},
{
case '\n':
if (in_quote)
- {
- ServerInstance->Log(DEBUG, "Got \\n inside value");
line += '\n';
- }
linenumber++;
case '\r':
if (!in_quote)
if ((ch == '\\') && (in_quote) && (in_tag))
{
line += ch;
- ServerInstance->Log(DEBUG,"Escape sequence in config line.");
char real_character;
if (conf.get(real_character))
{
- ServerInstance->Log(DEBUG,"Escaping %c", real_character);
if (real_character == 'n')
real_character = '\n';
line += real_character;
if (!default_value.empty())
{
result = default_value;
- ServerInstance->Log(DEBUG, "No config option for '%s' in tag <%s> using default: %s", var.c_str(), tag.c_str(), default_value.c_str());
return true;
}
}
if (!default_value.empty())
{
result = default_value;
- ServerInstance->Log(DEBUG, "No <%s:%s> tags in config file using default: %s", tag.c_str(), var.c_str(), default_value.c_str());
return true;
}
- ServerInstance->Log(DEBUG, "No <%s> tags in config file.", tag.c_str());
- }
- else
- {
- ServerInstance->Log(DEBUG, "ConfValue got an out-of-range index %d, there are only %d occurences of %s", pos, target.count(tag), tag.c_str());
}
return false;
}
return iter->second.size();
}
- else if(pos == 0)
- {
- ServerInstance->Log(DEBUG, "No <%s> tags in config file.", tag.c_str());
- }
- else
- {
- ServerInstance->Log(DEBUG, "ConfVarEnum got an out-of-range index %d, there are only %d occurences of %s", pos, target.count(tag), tag.c_str());
- }
return 0;
}
*/
bool ServerConfig::ReadFile(file_cache &F, const char* fname)
{
+ if (!fname || !*fname)
+ return false;
+
FILE* file = NULL;
char linebuf[MAXBUF];