- Implementation eventlist[] = { I_OnUnloadModule, I_OnRawSocketRead, I_OnRawSocketWrite, I_OnRehash };
- ServerInstance->Modules->Attach(eventlist, this, 4);
+ Implementation eventlist[] = { I_OnUnloadModule, I_OnRawSocketRead, I_OnRawSocketWrite, I_OnRehash, I_OnHookUserIO, I_OnCleanup };
+ ServerInstance->Modules->Attach(eventlist, this, 6);
+ }
+
+ bool isin(const std::string &host, int port, const std::vector<std::string> &portlist)
+ {
+ if (std::find(portlist.begin(), portlist.end(), "*:" + ConvToStr(port)) != portlist.end())
+ return true;
+
+ if (std::find(portlist.begin(), portlist.end(), ":" + ConvToStr(port)) != portlist.end())
+ return true;
+
+ return std::find(portlist.begin(), portlist.end(), host + ":" + ConvToStr(port)) != portlist.end();