+class ModuleSASL : public Module
+{
+ SimpleExtItem<SaslAuthenticator> authExt;
+ GenericCap cap;
+ CommandAuthenticate auth;
+ CommandSASL sasl;
+ public:
+ ModuleSASL()
+ : authExt("sasl_auth", this), cap(this, "sasl"), auth(this, authExt, cap), sasl(this, authExt)
+ {
+ Implementation eventlist[] = { I_OnEvent, I_OnUserRegister, I_OnPostConnect, I_OnUserDisconnect, I_OnCleanup };
+ ServerInstance->Modules->Attach(eventlist, this, 5);