void OnSetUserIP(LocalUser* user) CXX11_OVERRIDE
{
+ // If core_dns is not loaded or hostname resolution is disabled for the user's
+ // connect class then the logic in this function does not apply.
if (!DNS || !user->MyClass->resolvehostnames)
- {
- user->WriteNotice("*** Skipping host resolution (disabled by server administrator)");
return;
- }
+
+ // Clients can't have a DNS hostname if they aren't connected via IPv4 or IPv6.
+ if (user->client_sa.family() != AF_INET && user->client_sa.family() != AF_INET6)
+ return;
user->WriteNotice("*** Looking up your hostname...");