This_Server->next = NULL;
This_Server->type = CLIENT_SERVER;
This_Server->conn_id = NONE;
This_Server->next = NULL;
This_Server->type = CLIENT_SERVER;
This_Server->conn_id = NONE;
strlcpy(client->away, DEFAULT_AWAY_MSG, sizeof(client->away));
client->next = (POINTER *)My_Clients;
strlcpy(client->away, DEFAULT_AWAY_MSG, sizeof(client->away));
client->next = (POINTER *)My_Clients;
*
* The order of servers is arbitrary, but this function makes sure that the
* local server is always returned if the mask matches it.
*
* The order of servers is arbitrary, but this function makes sure that the
* local server is always returned if the mask matches it.
* Get (potentially cloaked) hostname of a client to display it to other users.
*
* If the client has not enabled cloaking, the real hostname is used.
* Get (potentially cloaked) hostname of a client to display it to other users.
*
* If the client has not enabled cloaking, the real hostname is used.
return Client_Hostname(Client);
/* Use an already saved cloaked hostname, if there is one */
return Client_Hostname(Client);
/* Use an already saved cloaked hostname, if there is one */
Conf_CloakHostModeX, Hash(Cloak_Buffer));
} else
strlcpy(Client->cloaked, Client_ID(Client->introducer),
Conf_CloakHostModeX, Hash(Cloak_Buffer));
} else
strlcpy(Client->cloaked, Client_ID(Client->introducer),
LogDebug("Cloaked hostname of \"%s\" updated to \"%s\"",
Client_ID(Client), Client->cloaked);
LogDebug("Cloaked hostname of \"%s\" updated to \"%s\"",
Client_ID(Client), Client->cloaked);
if (!IRC_WriteStrClientPrefix(Client, Prefix,
"SERVICE %s %d * +%s %d :%s",
Client_Mask(User),
if (!IRC_WriteStrClientPrefix(Client, Prefix,
"SERVICE %s %d * +%s %d :%s",
Client_Mask(User),
/* Synchronize metadata */
if (Client_HostnameCloaked(User)) {
if (!IRC_WriteStrClientPrefix(Client, Prefix,
/* Synchronize metadata */
if (Client_HostnameCloaked(User)) {
if (!IRC_WriteStrClientPrefix(Client, Prefix,