/** Name of the oper type; i.e. the one shown in WHOIS */
std::string name;
+ /** Creates a new OperInfo with the specified oper type name.
+ * @param Name The name of the oper type.
+ */
+ OperInfo(const std::string& Name);
+
/** Get a configuration item, searching in the oper, type, and class blocks (in that order) */
std::string getConfig(const std::string& key);
void init();
*/
bool DisabledDontExist;
- /** This variable contains a space-seperated list
- * of commands which are disabled by the
- * administrator of the server for non-opers.
- */
- std::string DisabledCommands;
-
/** This variable identifies which usermodes have been diabled.
*/
- char DisabledUModes[64];
+ std::bitset<64> DisabledUModes;
/** This variable identifies which chanmodes have been disabled.
*/
- char DisabledCModes[64];
+ std::bitset<64> DisabledCModes;
/** If set to true, then all opers on this server are
* shown with a generic 'is an IRC operator' line rather
void Fill();
- bool ApplyDisabledCommands(const std::string& data);
+ /** Disables the commands specified in <disabled:commands>. */
+ bool ApplyDisabledCommands();
/** Escapes a value for storage in a configuration key.
* @param str The string to escape.