X-Git-Url: https://git.netwichtig.de/gitweb/?a=blobdiff_plain;f=include%2Finspircd.h;h=182d33c9cfb8a271991b82c3dc72a0561dc82382;hb=d1ddbd62f91d4b9453447b5d25f5e41e807b0010;hp=4c3aba95b1cf49772219c1c090a44f34fe2c4a75;hpb=c8026bc2d73344e1df526f0a80694046efa4b22a;p=user%2Fhenk%2Fcode%2Finspircd.git diff --git a/include/inspircd.h b/include/inspircd.h index 4c3aba95b..182d33c9c 100644 --- a/include/inspircd.h +++ b/include/inspircd.h @@ -74,7 +74,7 @@ typedef std::vector< KeyVal > KeyValList; typedef std::multimap< std::string, KeyValList > ConfigDataHash; class InspIRCd; -extern InspIRCd* ServerInstance; +CoreExport extern InspIRCd* ServerInstance; #include "inspircd_config.h" #include "inspircd_version.h" @@ -293,13 +293,12 @@ class BanCacheManager; */ class CoreExport ConfigReaderThread : public Thread { - InspIRCd* ServerInstance; ServerConfig* Config; bool done; public: std::string TheUserUID; - ConfigReaderThread(InspIRCd* Instance, const std::string &useruid) - : Thread(), ServerInstance(Instance), done(false), TheUserUID(useruid) + ConfigReaderThread(const std::string &useruid) + : Thread(), done(false), TheUserUID(useruid) { } @@ -422,10 +421,6 @@ class CoreExport InspIRCd : public classbase */ void BuildISupport(); - /** List of server names we've seen. - */ - servernamelist servernames; - /** Time this ircd was booted */ time_t startup_time; @@ -513,6 +508,14 @@ class CoreExport InspIRCd : public classbase */ ProtocolInterface* PI; + /** Holds extensible for user nickforced + */ + LocalIntExt NICKForced; + + /** Holds extensible for user operquit + */ + LocalStringExt OperQuit; + /** Get the current time * Because this only calls time() once every time around the mainloop, * it is much faster than calling time() directly. @@ -533,24 +536,6 @@ class CoreExport InspIRCd : public classbase */ bool BindSocket(int sockfd, int port, const char* addr, bool dolisten = true); - /** Adds a server name to the list of servers we've seen - * @param The servername to add - */ - void AddServerName(const std::string &servername); - - /** Finds a cached char* pointer of a server name, - * This is used to optimize User by storing only the pointer to the name - * @param The servername to find - * @return A pointer to this name, gauranteed to never become invalid - */ - const char* FindServerNamePtr(const std::string &servername); - - /** Returns true if we've seen the given server name before - * @param The servername to find - * @return True if we've seen this server name before - */ - bool FindServerName(const std::string &servername); - /** Gets the GECOS (description) field of the given server. * If the servername is not that of the local server, the name * is passed to handling modules which will attempt to determine @@ -558,7 +543,7 @@ class CoreExport InspIRCd : public classbase * @param servername The servername to find the description of * @return The description of this server, or of the local server */ - std::string GetServerDescription(const char* servername); + std::string GetServerDescription(const std::string& servername); /** Find a user in the nick hash. * If the user cant be found in the nick hash check the uuid hash @@ -811,12 +796,12 @@ class CoreExport InspIRCd : public classbase * @param server The server to check for uline status * @return True if the server is a uline OR the string is empty */ - bool ULine(const char* server); + bool ULine(const std::string& server); /** Returns true if the uline is 'silent' (doesnt generate * remote connect notices etc). */ - bool SilentULine(const char* server); + bool SilentULine(const std::string& server); /** Returns the subversion revision ID of this ircd * @return The revision ID or an empty string @@ -927,14 +912,14 @@ class CommandModule : public Module { Cmd cmd; public: - CommandModule(InspIRCd*) : cmd(this) + CommandModule() : cmd(this) { ServerInstance->AddCommand(&cmd); } Version GetVersion() { - return Version(cmd.command, VF_VENDOR); + return Version(cmd.command, VF_VENDOR|VF_CORE); } };