addr->in6[cpos + jj] = 0;
}
} else if (dot) {
- unsigned int ip4;
+ uint32_t ip4;
pos = irc_pton_ip4(input, bits, &ip4);
if (pos) {
addr->in6[5] = htons(65535);
return 1;
}
/* If only matching the visible hostnames, bail early. */
- if ((flags & MATCH_VISIBLE) && (IsFakeHost(user) || IsHiddenHost(user)))
+ if ((flags & MATCH_VISIBLE) && IsHiddenHost(user)
+ && (IsFakeHost(user) || (hidden_host_suffix && user->handle_info)))
return 0;
/* If it might be an IP glob, test that. */
if (!glob[strspn(glob, "0123456789./*?")]