]> git.netwichtig.de Git - user/henk/code/inspircd.git/blobdiff - src/modules/m_cloaking.cpp
Merge pull request #1222 from SaberUK/master+warnings
[user/henk/code/inspircd.git] / src / modules / m_cloaking.cpp
index 4c2c56318c96e85072e986ad56544cc048ed067b..890c799f2b2b55d2e96b4c099db9bdc1163a9f75 100644 (file)
@@ -49,7 +49,7 @@ class CloakUser : public ModeHandler
 
        CloakUser(Module* source)
                : ModeHandler(source, "cloak", 'x', PARAM_NONE, MODETYPE_USER),
-               ext("cloaked_host", source), debounce_ts(0), debounce_count(0)
+               ext("cloaked_host", ExtensionItem::EXT_USER, source), debounce_ts(0), debounce_count(0)
        {
        }
 
@@ -99,7 +99,7 @@ class CloakUser : public ModeHandler
                        }
                        if (cloak)
                        {
-                               user->ChangeDisplayedHost(cloak->c_str());
+                               user->ChangeDisplayedHost(*cloak);
                                user->SetMode(this, true);
                                return MODEACTION_ALLOW;
                        }
@@ -192,7 +192,7 @@ class ModuleCloaking : public Module
                input.append(1, '\0'); // null does not terminate a C++ string
                input.append(item);
 
-               std::string rv = Hash->sum(input).substr(0,len);
+               std::string rv = Hash->GenerateRaw(input).substr(0,len);
                for(int i=0; i < len; i++)
                {
                        // this discards 3 bits per byte. We have an
@@ -253,19 +253,17 @@ class ModuleCloaking : public Module
                }
                else
                {
-                       char buf[50];
                        if (ip.sa.sa_family == AF_INET6)
                        {
-                               snprintf(buf, 50, ".%02x%02x.%02x%02x%s",
+                               rv.append(InspIRCd::Format(".%02x%02x.%02x%02x%s",
                                        ip.in6.sin6_addr.s6_addr[2], ip.in6.sin6_addr.s6_addr[3],
-                                       ip.in6.sin6_addr.s6_addr[0], ip.in6.sin6_addr.s6_addr[1], suffix.c_str());
+                                       ip.in6.sin6_addr.s6_addr[0], ip.in6.sin6_addr.s6_addr[1], suffix.c_str()));
                        }
                        else
                        {
                                const unsigned char* ip4 = (const unsigned char*)&ip.in4.sin_addr;
-                               snprintf(buf, 50, ".%d.%d%s", ip4[1], ip4[0], suffix.c_str());
+                               rv.append(InspIRCd::Format(".%d.%d%s", ip4[1], ip4[0], suffix.c_str()));
                        }
-                       rv.append(buf);
                }
                return rv;
        }
@@ -301,7 +299,7 @@ class ModuleCloaking : public Module
                if (u->IsModeSet(cu))
                {
                        u->SetMode(cu, false);
-                       u->WriteServ("MODE %s -%c", u->nick.c_str(), cu.GetModeChar());
+                       u->WriteCommand("MODE", "-" + ConvToStr(cu.GetModeChar()));
                }
        }