- /* if the buffers havent been built, do it here */
- if(s == NULL)
- {
- sprintf(src_host, "%s!%s@%s", who->name, who->username, who->host);
- sprintf(src_iphost, "%s!%s@%s", who->name, who->username, who->sockhost);
-
- s = src_host;
- s2 = src_iphost;
- }
- if(who->localClient->mangledhost != NULL)
- {
- /* if host mangling mode enabled, also check their real host */
- if(!strcmp(who->host, who->localClient->mangledhost))
- {
- sprintf(src_althost, "%s!%s@%s", who->name, who->username, who->orighost);
- s3 = src_althost;
- }
- /* if host mangling mode not enabled and no other spoof,
- * also check the mangled form of their host */
- else if (!IsDynSpoof(who))
- {
- sprintf(src_althost, "%s!%s@%s", who->name, who->username, who->localClient->mangledhost);
- s3 = src_althost;
- }
- }
-#ifdef RB_IPV6
- if(GET_SS_FAMILY(&who->localClient->ip) == AF_INET6 &&
- rb_ipv4_from_ipv6((const struct sockaddr_in6 *)&who->localClient->ip, &ip4))