diff options
Diffstat (limited to 'include')
-rw-r--r-- | include/configreader.h | 8 | ||||
-rw-r--r-- | include/modules.h | 8 |
2 files changed, 11 insertions, 5 deletions
diff --git a/include/configreader.h b/include/configreader.h index 617059cf4..394d7f0f6 100644 --- a/include/configreader.h +++ b/include/configreader.h @@ -232,11 +232,11 @@ class CoreExport ServerConfig : public Extensible * configutation, appending errors to errorstream * and setting error if an error has occured. */ - bool ParseLine(ConfigDataHash &target, std::string &line, long &linenumber, std::ostringstream &errorstream); + bool ParseLine(ConfigDataHash &target, std::string &line, long &linenumber, std::ostringstream &errorstream, int pass); /** Process an include directive */ - bool DoInclude(ConfigDataHash &target, const std::string &file, std::ostringstream &errorstream); + bool DoInclude(ConfigDataHash &target, const std::string &file, std::ostringstream &errorstream, int pass); /** Check that there is only one of each configuration item */ @@ -643,12 +643,12 @@ class CoreExport ServerConfig : public Extensible /** Load 'filename' into 'target', with the new config parser everything is parsed into * tag/key/value at load-time rather than at read-value time. */ - bool LoadConf(ConfigDataHash &target, const char* filename, std::ostringstream &errorstream); + bool LoadConf(ConfigDataHash &target, const char* filename, std::ostringstream &errorstream, int pass); /** Load 'filename' into 'target', with the new config parser everything is parsed into * tag/key/value at load-time rather than at read-value time. */ - bool LoadConf(ConfigDataHash &target, const std::string &filename, std::ostringstream &errorstream); + bool LoadConf(ConfigDataHash &target, const std::string &filename, std::ostringstream &errorstream, int pass); /* Both these return true if the value existed or false otherwise */ diff --git a/include/modules.h b/include/modules.h index 5190563ef..a3cac1486 100644 --- a/include/modules.h +++ b/include/modules.h @@ -401,10 +401,12 @@ enum Implementation I_OnRawSocketAccept, I_OnRawSocketClose, I_OnRawSocketWrite, I_OnRawSocketRead, I_OnChangeLocalUserGECOS, I_OnUserRegister, I_OnOperCompare, I_OnChannelDelete, I_OnPostOper, I_OnSyncOtherMetaData, I_OnSetAway, I_OnCancelAway, I_OnUserList, I_OnPostCommand, I_OnPostJoin, I_OnWhoisLine, I_OnBuildExemptList, I_OnRawSocketConnect, I_OnGarbageCollect, I_OnBufferFlushed, - I_OnText, + I_OnText, I_OnReadConfig, I_OnDownloadFile, I_END }; +class ConfigReader; + /** Base class for all InspIRCd modules * This class is the base class for InspIRCd modules. All modules must inherit from this class, * its methods will be called when irc server events occur. class inherited from module must be @@ -434,6 +436,10 @@ class CoreExport Module : public Extensible { } + virtual void OnReadConfig(ServerConfig* config, ConfigReader* coreconf); + + virtual int OnDownloadFile(const std::string &filename, std::stringstream &filedata); + /** Returns the version number of a Module. * The method should return a Version object with its version information assigned via * Version::Version |