diff options
author | w00t <w00t@e03df62e-2008-0410-955e-edbf42e46eb7> | 2008-10-18 16:52:48 +0000 |
---|---|---|
committer | w00t <w00t@e03df62e-2008-0410-955e-edbf42e46eb7> | 2008-10-18 16:52:48 +0000 |
commit | 0d3ecb964292600ec1ce6ee1cef83f72185a8bcc (patch) | |
tree | 976feadbe1a37f03cf91149bc8d4c930f90e592e /src/configreader.cpp | |
parent | f43283920224b3d762ae371d7320024512a8afde (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.cpp | 10 |
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; } |