X-Git-Url: https://git.netwichtig.de/gitweb/?a=blobdiff_plain;f=include%2Fconfigreader.h;h=8a548fcbfef8e0724a0610ad977e1c6b6cc1ea52;hb=ee23dd450ed713d907d0ecdeec356971439d4356;hp=5a775a016eb1f6c4ba386495ad0cc29083b881ed;hpb=6fcbfc072387752ec345d7589e986b9959f350fc;p=user%2Fhenk%2Fcode%2Finspircd.git diff --git a/include/configreader.h b/include/configreader.h index 5a775a016..8a548fcbf 100644 --- a/include/configreader.h +++ b/include/configreader.h @@ -5,7 +5,7 @@ * Copyright (C) 2018 Chris Novakovic * Copyright (C) 2013-2014, 2016 Attila Molnar * Copyright (C) 2013 Daniel Vassdal - * Copyright (C) 2012-2014, 2016-2019 Sadie Powell + * Copyright (C) 2012-2014, 2016-2020 Sadie Powell * Copyright (C) 2012, 2019 Robby * Copyright (C) 2009-2010 Daniel De Graaf * Copyright (C) 2008 Thomas Stagner @@ -95,6 +95,8 @@ class CoreExport ConfigTag : public refcountbase class ServerLimits { public: + /** Maximum line length */ + size_t MaxLine; /** Maximum nickname length */ size_t NickMax; /** Maximum channel length */ @@ -113,8 +115,6 @@ class ServerLimits size_t MaxReal; /** Maximum away message length */ size_t MaxAway; - /** Maximum line length */ - size_t MaxLine; /** Maximum hostname length */ size_t MaxHost; @@ -250,12 +250,16 @@ class CoreExport ServerConfig /** Module path */ std::string Module; + /** Runtime path */ + std::string Runtime; + 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); } std::string PrependLog(const std::string& fn) const { return FileSystem::ExpandPath(Log, fn); } std::string PrependModule(const std::string& fn) const { return FileSystem::ExpandPath(Module, fn); } + std::string PrependRuntime(const std::string& fn) const { return FileSystem::ExpandPath(Runtime, fn); } }; /** Holds a complete list of all connect blocks @@ -313,12 +317,12 @@ class CoreExport ServerConfig CommandLineConf cmdline; /** Clones CIDR range for ipv4 (0-32) - * Defaults to 32 (checks clones on all IPs seperately) + * Defaults to 32 (checks clones on all IPs separately) */ unsigned char c_ipv4_range; /** Clones CIDR range for ipv6 (0-128) - * Defaults to 128 (checks on all IPs seperately) + * Defaults to 128 (checks on all IPs separately) */ unsigned char c_ipv6_range; @@ -332,7 +336,7 @@ class CoreExport ServerConfig std::string XLineMessage; /* Holds the network name the local server - * belongs to. This is an arbitary field defined + * belongs to. This is an arbitrary field defined * by the administrator. */ std::string Network; @@ -451,6 +455,12 @@ class CoreExport ServerConfig */ const std::string& GetSID() const { return sid; } + /** Retrieves the server name which should be shown to users. */ + const std::string& GetServerName() const { return HideServer.empty() ? ServerName : HideServer; } + + /** Retrieves the server description which should be shown to users. */ + const std::string& GetServerDesc() const { return HideServer.empty() ? ServerDesc : HideServer; } + /** Read the entire configuration into memory * and initialize this class. All other methods * should be used only by the core.