class CoreExport Version : public classbase
{
public:
- /** Version numbers, build number, flags and API version
- */
- const int Major, Minor, Revision, Build, Flags, API;
+ /** Version information.
+ */
+ std::string version;
+
+ /** Flags and API version
+ */
+ const int Flags, API;
- /** Initialize version class
- */
- Version(int major, int minor, int revision, int build, int flags, int api_ver);
+ /** Initialize version class
+ */
+ Version(const std::string &sversion, int flags, int api_ver);
};
/** The ModuleMessage class is the base class of Request and Event
I_OnRawSocketAccept, I_OnRawSocketClose, I_OnRawSocketWrite, I_OnRawSocketRead, I_OnChangeLocalUserGECOS, I_OnUserRegister,
I_OnChannelPreDelete, I_OnChannelDelete, I_OnPostOper, I_OnSyncOtherMetaData, I_OnSetAway, I_OnUserList,
I_OnPostCommand, I_OnPostJoin, I_OnWhoisLine, I_OnBuildExemptList, I_OnRawSocketConnect, I_OnGarbageCollect, I_OnBufferFlushed,
- I_OnText, I_OnPassCompare, I_OnRunTestSuite, I_OnNamesListItem, I_OnNumeric, I_OnHookUserIO,
+ I_OnText, I_OnPassCompare, I_OnRunTestSuite, I_OnNamesListItem, I_OnNumeric, I_OnHookUserIO, I_OnHostCycle,
I_END
};
* @param target The Channel* or User* that modes should be sent for
* @param modeline The modes and parameters to be sent
*/
- virtual void ProtoSendMode(void* opaque, int target_type, void* target, const std::string &modeline);
+ virtual void ProtoSendMode(void* opaque, TargetTypeFlags target_type, void* target, const std::string &modeline);
/** Implemented by modules which provide the ability to link servers.
* These modules will implement this method, which allows metadata (extra data added to
* @param extname The extension name to send metadata for
* @param extdata Encoded data for this extension name, which will be encoded at the oppsite end by an identical module using OnDecodeMetaData
*/
- virtual void ProtoSendMetaData(void* opaque, int target_type, void* target, const std::string &extname, const std::string &extdata);
+ virtual void ProtoSendMetaData(void* opaque, TargetTypeFlags target_type, void* target, const std::string &extname, const std::string &extdata);
/** Called after every WALLOPS command.
* @param user The user sending the WALLOPS
virtual void OnNamesListItem(User* issuer, User* user, Channel* channel, std::string &prefixes, std::string &nick);
virtual int OnNumeric(User* user, unsigned int numeric, const std::string &text);
+
+ /** Called for every time the user's host or ident changes, to indicate wether or not the 'Changing host'
+ * message should be sent, if enabled. Certain modules such as auditorium may opt to hide this message
+ * even if it is enabled.
+ */
+ virtual bool OnHostCycle(User* user);
};