summaryrefslogtreecommitdiff
path: root/src/configreader.cpp
diff options
context:
space:
mode:
authorw00t <w00t@e03df62e-2008-0410-955e-edbf42e46eb7>2008-10-18 16:52:48 +0000
committerw00t <w00t@e03df62e-2008-0410-955e-edbf42e46eb7>2008-10-18 16:52:48 +0000
commit0d3ecb964292600ec1ce6ee1cef83f72185a8bcc (patch)
tree976feadbe1a37f03cf91149bc8d4c930f90e592e /src/configreader.cpp
parentf43283920224b3d762ae371d7320024512a8afde (diff)
Working privs implementation, and example usage in NOTICE for mass messaging.
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10662 e03df62e-2008-0410-955e-edbf42e46eb7
Diffstat (limited to 'src/configreader.cpp')
-rw-r--r--src/configreader.cpp10
1 files changed, 7 insertions, 3 deletions
diff --git a/src/configreader.cpp b/src/configreader.cpp
index 118507861..189146137 100644
--- a/src/configreader.cpp
+++ b/src/configreader.cpp
@@ -913,9 +913,9 @@ void ServerConfig::Read(bool bail, const std::string &useruid)
InitTypes, DoType, DoneClassesAndTypes},
{"class",
- {"name", "commands", "usermodes", "chanmodes", NULL},
- {"", "", "", "", NULL},
- {DT_NOSPACES, DT_CHARPTR, DT_CHARPTR, DT_CHARPTR},
+ {"name", "commands", "usermodes", "chanmodes", "privs", NULL},
+ {"", "", "", "", "", NULL},
+ {DT_NOSPACES, DT_CHARPTR, DT_CHARPTR, DT_CHARPTR, DT_CHARPTR},
InitClasses, DoClass, DoneClassesAndTypes},
{NULL,
@@ -2224,6 +2224,8 @@ bool InitClasses(ServerConfig* conf, const char*)
delete[] n->second.cmodelist;
if (n->second.umodelist)
delete[] n->second.umodelist;
+ if (n->second.privs)
+ delete[] n->second.privs;
}
}
@@ -2252,6 +2254,7 @@ bool DoClass(ServerConfig* conf, const char* tag, char**, ValueList &values, int
const char* CommandList = values[1].GetString();
const char* UModeList = values[2].GetString();
const char* CModeList = values[3].GetString();
+ const char *PrivsList = values[4].GetString();
for (const char* c = UModeList; *c; ++c)
{
@@ -2271,6 +2274,7 @@ bool DoClass(ServerConfig* conf, const char* tag, char**, ValueList &values, int
conf->operclass[ClassName].commandlist = strnewdup(CommandList);
conf->operclass[ClassName].umodelist = strnewdup(UModeList);
conf->operclass[ClassName].cmodelist = strnewdup(CModeList);
+ conf->operclass[ClassName].privs = strnewdup(PrivsList);
return true;
}