const int src_line;
/** Get the value of an option, using def if it does not exist */
- std::string getString(const std::string& key, const std::string& def = "");
+ std::string getString(const std::string& key, const std::string& def = "", size_t minlen = 0, size_t maxlen = UINT32_MAX);
/** Get the value of an option, using def if it does not exist */
long getInt(const std::string& key, long def = 0, long min = LONG_MIN, long max = LONG_MAX);
/** Get the value of an option, using def if it does not exist */
*/
ServerLimits(ConfigTag* tag);
- /** Maximum length of a n!u@h mask */
+ /** Maximum length of a n!u\@h mask */
size_t GetMaxMask() const { return NickMax + 1 + IdentMax + 1 + MaxHost; }
};
/** Module path */
std::string Module;
- ServerPaths()
- : Config(INSPIRCD_CONFIG_PATH)
- , Data(INSPIRCD_DATA_PATH)
- , Log(INSPIRCD_LOG_PATH)
- , Module(INSPIRCD_MODULE_PATH) { }
+ ServerPaths(ConfigTag* tag);
std::string PrependConfig(const std::string& fn) const { return FileSystem::ExpandPath(Config, fn); }
std::string PrependData(const std::string& fn) const { return FileSystem::ExpandPath(Data, fn); }
*/
bool RestrictBannedUsers;
- /** The number of seconds the DNS subsystem
- * will wait before timing out any request.
- */
- int dns_timeout;
-
/** The size of the read() buffer in the user
* handling code, used to read data into a user's
* recvQ.