]> git.netwichtig.de Git - user/henk/code/inspircd.git/blobdiff - src/modules/m_cloaking.cpp
Remove completed XXX: override is now only checked locally, snotices are automaticall...
[user/henk/code/inspircd.git] / src / modules / m_cloaking.cpp
index a0318df865ed5d947e0b571808b1ceafb70828bb..e5cf649884548c32a2c4e3b218356b6a4075230b 100644 (file)
@@ -289,10 +289,21 @@ class ModuleCloaking : public Module
 
                ServerInstance->Modules->UseInterface("HashRequest");
 
-               Implementation eventlist[] = { I_OnRehash, I_OnUserDisconnect, I_OnCleanup, I_OnCheckBan, I_OnUserConnect };
-               ServerInstance->Modules->Attach(eventlist, this, 5);
+               Implementation eventlist[] = { I_OnRehash, I_OnUserDisconnect, I_OnCleanup, I_OnCheckBan, I_OnUserConnect, I_OnSyncUserMetaData };
+               ServerInstance->Modules->Attach(eventlist, this, 6);
        }
 
+       void OnSyncUserMetaData(User* user, Module* proto,void* opaque, const std::string &extname, bool displayable)
+       {
+               if ((displayable) && (extname == "cloaked_host"))
+               {
+                       std::string* cloak;
+                       if (user->GetExt("cloaked_host", cloak))
+                               proto->ProtoSendMetaData(opaque, TYPE_USER, user, extname, *cloak);
+               }
+       }
+
+
        virtual int OnCheckBan(User* user, Channel* chan)
        {
                char mask[MAXBUF];