#endif
// version is a simple class for holding a modules version number
-Version::Version(int major, int minor, int revision, int build, int flags, int api_ver)
-: Major(major), Minor(minor), Revision(revision), Build(build), Flags(flags), API(api_ver)
+Version::Version(const std::string &sversion, int flags, int api_ver)
+: version(sversion), Flags(flags), API(api_ver)
{
}
// These declarations define the behavours of the base class Module (which does nothing at all)
- Module::Module(InspIRCd* Me) : ServerInstance(Me) { }
- Module::~Module() { }
+Module::Module(InspIRCd* Me) : ServerInstance(Me) { }
+Module::~Module() { }
+
+int Module::OnSendSnotice(char &snomask, std::string &type, const std::string &message) { return 0; }
void Module::OnUserConnect(User*) { }
void Module::OnUserQuit(User*, const std::string&, const std::string&) { }
void Module::OnUserDisconnect(User*) { }
void Module::OnServerRaw(std::string&, bool, User*) { }
int Module::OnUserPreJoin(User*, Channel*, const char*, std::string&, const std::string&) { return 0; }
void Module::OnMode(User*, void*, int, const std::string&) { }
-Version Module::GetVersion() { return Version(1,0,0,0,VF_VENDOR,-1); }
+Version Module::GetVersion() { return Version("Misconfigured", VF_VENDOR, -1); }
void Module::OnOper(User*, const std::string&) { }
void Module::OnPostOper(User*, const std::string&, const std::string &) { }
void Module::OnInfo(User*) { }
void Module::OnGetServerDescription(const std::string&, std::string&) { }
void Module::OnSyncUser(User*, Module*, void*) { }
void Module::OnSyncChannel(Channel*, Module*, void*) { }
-void Module::ProtoSendMode(void*, int, void*, const std::string&) { }
+void Module::ProtoSendMode(void*, TargetTypeFlags, void*, const std::string&) { }
void Module::OnSyncChannelMetaData(Channel*, Module*, void*, const std::string&, bool) { }
void Module::OnSyncUserMetaData(User*, Module*, void*, const std::string&, bool) { }
void Module::OnSyncOtherMetaData(Module*, void*, bool) { }
void Module::OnDecodeMetaData(int, void*, const std::string&, const std::string&) { }
-void Module::ProtoSendMetaData(void*, int, void*, const std::string&, const std::string&) { }
+void Module::ProtoSendMetaData(void*, TargetTypeFlags, void*, const std::string&, const std::string&) { }
void Module::OnWallops(User*, const std::string&) { }
void Module::OnChangeHost(User*, const std::string&) { }
void Module::OnChangeName(User*, const std::string&) { }
void Module::OnNamesListItem(User*, User*, Channel*, std::string&, std::string&) { }
int Module::OnNumeric(User*, unsigned int, const std::string&) { return 0; }
void Module::OnHookUserIO(User*, const std::string&) { }
+bool Module::OnHostCycle(User* user) { return false; }
ModuleManager::ModuleManager(InspIRCd* Ins) : ModCount(0), Instance(Ins)
{
}
else
{
- Instance->Logs->Log("MODULE", DEFAULT,"New module introduced: %s (API version %d, Module version %d.%d.%d.%d)%s", filename, v.API, v.Major, v.Minor, v.Revision, v.Build, (!(v.Flags & VF_VENDOR) ? " [3rd Party]" : " [Vendor]"));
+ Instance->Logs->Log("MODULE", DEFAULT,"New module introduced: %s (API version %d, Module version %s)%s", filename, v.API, v.version.c_str(), (!(v.Flags & VF_VENDOR) ? " [3rd Party]" : " [Vendor]"));
}
Modules[filename_str] = std::make_pair(newhandle, newmod);
void ConfigReader::DumpErrors(bool bail, User* user)
{
- ServerInstance->Config->ReportConfigError(this->errorlog->str(), bail, user);
+ ServerInstance->Config->ReportConfigError(this->errorlog->str(), bail, user->uuid);
}