X-Git-Url: http://git.pk910.de/?a=blobdiff_plain;f=src%2Fproto-common.c;h=a7c159a18f989449eba731cec2dedf2b6eb1ba19;hb=77451facc01892282460b97a2fbe971dae319eec;hp=e71bacd6959323c24896f048f382338c66d6f8a0;hpb=ddcf88358f6b4fb28e1751b9655d1baabb0f114c;p=srvx.git diff --git a/src/proto-common.c b/src/proto-common.c index e71bacd..a7c159a 100644 --- a/src/proto-common.c +++ b/src/proto-common.c @@ -757,7 +757,12 @@ generate_hostmask(struct userNode *user, int options) } hostname = user->hostname; if (IsFakeHost(user) && IsHiddenHost(user) && !(options & GENMASK_NO_HIDING)) { - hostname = user->fakehost; + if(user->fakehost && user->fakehost[0] == "$") { + hostname = alloca(strlen(user->handle_info->handle) + strlen(user->fakehost)); + sprintf(hostname, "%s%s", user->handle_info->handle, user->fakehost+1); + } else { + hostname = user->fakehost; + } } else if (IsHiddenHost(user) && user->handle_info && hidden_host_suffix && !(options & GENMASK_NO_HIDING)) { hostname = alloca(strlen(user->handle_info->handle) + strlen(hidden_host_suffix) + 2); sprintf(hostname, "%s.%s", user->handle_info->handle, hidden_host_suffix);