X-Git-Url: https://git.netwichtig.de/gitweb/?a=blobdiff_plain;f=include%2Finspircd.h;h=84995710dcfdeb4995c98800ed22f97a4fb26aff;hb=343f12b9b2d4e519b09877f76a00f6a0714509f2;hp=5f528c16b82b9ec91d09f4219c5799b387f1cd7b;hpb=29b51086b95c86f812ac35ed7d3333f060ba5a8c;p=user%2Fhenk%2Fcode%2Finspircd.git diff --git a/include/inspircd.h b/include/inspircd.h index 5f528c16b..84995710d 100644 --- a/include/inspircd.h +++ b/include/inspircd.h @@ -232,6 +232,23 @@ DEFINE_HANDLER1(FloodQuitUserHandler, void, User*); class XLineManager; class BanCacheManager; +class CoreExport ConfigReaderThread : public Thread +{ + InspIRCd* ServerInstance; + bool do_bail; + User* TheUser; + public: + ConfigReaderThread(InspIRCd* Instance, bool bail, User* user) : Thread(), ServerInstance(Instance), do_bail(bail), TheUser(user) + { + } + + virtual ~ConfigReaderThread() + { + } + + void Run(); +}; + /** The main class of the irc server. * This class contains instances of all the other classes * in this software, with the exception of the base class, @@ -250,7 +267,7 @@ class CoreExport InspIRCd : public classbase private: /** Holds the current UID. Used to generate the next one. */ - char current_uid[UUID_LENGTH]; + char current_uid[UUID_LENGTH + 1]; /** Set up the signal handlers */ @@ -381,6 +398,14 @@ class CoreExport InspIRCd : public classbase */ SocketEngine* SE; + /** Thread engine, Handles threading where required + */ + ThreadEngine* Threads; + + /** The thread/class used to read config files in REHASH and on startup + */ + ConfigReaderThread* ConfigThread; + /** LogManager handles logging. */ LogManager *Logs;