}
else
{
+ fc.clear();
FILE* f = fopen(filename.c_str(), "r");
if (!f)
return;
void ReadConfig()
{
acl_list.clear();
- ConfigReader c;
- int n_items = c.Enumerate("httpdacl");
- for (int i = 0; i < n_items; ++i)
+ ConfigTagList acls = ServerInstance->Config->ConfTags("httpdacl");
+ for (ConfigIter i = acls.first; i != acls.second; i++)
{
- std::string path = c.ReadValue("httpdacl", "path", i);
- std::string types = c.ReadValue("httpdacl", "types", i);
+ ConfigTag* c = i->second;
+ std::string path = c->getString("path");
+ std::string types = c->getString("types");
irc::commasepstream sep(types);
std::string type;
std::string username;
{
if (type == "password")
{
- username = c.ReadValue("httpdacl", "username", i);
- password = c.ReadValue("httpdacl", "password", i);
+ username = c->getString("username");
+ password = c->getString("password");
}
else if (type == "whitelist")
{
- whitelist = c.ReadValue("httpdacl", "whitelist", i);
+ whitelist = c->getString("whitelist");
}
else if (type == "blacklist")
{
- blacklist = c.ReadValue("httpdacl", "blacklist", i);
+ blacklist = c->getString("blacklist");
}
else
{
#include "protocol.h"
/* $ModDesc: Provides statistics over HTTP via m_httpd.so */
-/* $ModDep: httpd.h */
-class ModuleHttpStats : public Module
+class ModuleHttpConfig : public Module
{
-
- std::string stylesheet;
- bool changed;
-
public:
-
- void ReadConfig()
- {
- ConfigReader c;
- this->stylesheet = c.ReadValue("httpstats", "stylesheet", 0);
- }
-
- ModuleHttpStats() {
- ReadConfig();
- this->changed = true;
+ ModuleHttpConfig() {
Implementation eventlist[] = { I_OnEvent };
ServerInstance->Modules->Attach(eventlist, this, 1);
}
}
}
- virtual ~ModuleHttpStats()
+ virtual ~ModuleHttpConfig()
{
}
virtual Version GetVersion()
{
- return Version("Provides statistics over HTTP via m_httpd.so", VF_VENDOR);
+ return Version("Provides configuration over HTTP via m_httpd.so", VF_VENDOR);
}
};
-MODULE_INIT(ModuleHttpStats)
+MODULE_INIT(ModuleHttpConfig)
class ModuleHttpStats : public Module
{
static std::map<char, char const*> const &entities;
- std::string stylesheet;
- bool changed;
public:
- void ReadConfig()
- {
- ConfigReader c;
- this->stylesheet = c.ReadValue("httpstats", "stylesheet", 0);
- }
-
ModuleHttpStats() {
- ReadConfig();
- this->changed = true;
Implementation eventlist[] = { I_OnEvent };
ServerInstance->Modules->Attach(eventlist, this, 1);
}
void LoadOperMOTD()
{
- ConfigReader conf;
- std::string filename;
- filename = conf.ReadValue("opermotd","file",0);
- delete opermotd;
- opermotd = new FileReader(filename);
- onoper = conf.ReadFlag("opermotd","onoper","yes",0);
+ ConfigTag* conf = ServerInstance->Config->ConfValue("opermotd");
+ opermotd->LoadFile(conf->getString("file","opermotd"));
+ onoper = conf->getBool("onoper", true);
}
ModuleOpermotd()
virtual ~ModuleOpermotd()
{
+ delete opermotd;
+ opermotd = NULL;
}
virtual Version GetVersion()
return Version("Shows a message to opers after oper-up, adds /opermotd", VF_VENDOR);
}
-
virtual void OnOper(User* user, const std::string &opertype)
{
if (onoper)