]> git.netwichtig.de Git - user/henk/code/inspircd.git/blobdiff - src/coremods/core_hostname_lookup.cpp
Use ERR_INVALIDUSERNAME rather than ERR_NEEDMOREPARAMS in USER.
[user/henk/code/inspircd.git] / src / coremods / core_hostname_lookup.cpp
index d150b85516623cab55ca27348dea23c0d6510323..4320b1e574207eaf85078590929d7bcf99635172 100644 (file)
@@ -56,7 +56,7 @@ class UserResolver : public DNS::Request
         * if a previous result has already come back.
         * @param r The finished query
         */
-       void OnLookupComplete(const DNS::Query* r)
+       void OnLookupComplete(const DNS::Query* r) CXX11_OVERRIDE
        {
                LocalUser* bound_user = (LocalUser*)ServerInstance->FindUUID(uuid);
                if (!bound_user)
@@ -145,11 +145,7 @@ class UserResolver : public DNS::Request
                                                hostname->insert(0, "0");
 
                                        bound_user->WriteNotice("*** Found your hostname (" + *hostname + (r->cached ? ") -- cached" : ")"));
-                                       bound_user->host.assign(*hostname, 0, ServerInstance->Config->Limits.MaxHost);
-                                       bound_user->dhost = bound_user->host;
-
-                                       /* Invalidate cache */
-                                       bound_user->InvalidateCache();
+                                       bound_user->ChangeRealHost(hostname->substr(0, ServerInstance->Config->Limits.MaxHost), true);
                                }
                                else
                                {
@@ -168,7 +164,7 @@ class UserResolver : public DNS::Request
        /** Called on failed lookup
         * @param query The errored query
         */
-       void OnError(const DNS::Query* query)
+       void OnError(const DNS::Query* query) CXX11_OVERRIDE
        {
                LocalUser* bound_user = (LocalUser*)ServerInstance->FindUUID(uuid);
                if (bound_user)
@@ -195,7 +191,7 @@ class ModuleHostnameLookup : public Module
                ph = &ptrHosts;
        }
 
-       void OnUserInit(LocalUser *user) CXX11_OVERRIDE
+       void OnSetUserIP(LocalUser* user) CXX11_OVERRIDE
        {
                if (!DNS || !user->MyClass->resolvehostnames)
                {