Example #1
0
static void query_update_topic(QUERY_REC *query, const char *uin, guint32 ip)
{
	if (ip && ip != -1) {
		char *address = g_strdup_printf("%s@%d.%d.%d.%d", uin, ip>>24, (ip>>16)&255, (ip>>8)&255, ip&255);
		if (!query->address || strcmp(query->address, address))
			query_change_address(query, address);
		g_free(address);
	} else if (!query->address) {
Example #2
0
static void check_query_changes(IRC_SERVER_REC *server, const char *nick,
				const char *address, const char *target)
{
	QUERY_REC *query;

	if (ischannel(*target))
                return;

	query = irc_query_find(server, nick);
	if (query == NULL)
		return;

	if (strcmp(query->name, nick) != 0) {
		/* upper/lowercase chars in nick changed */
		query_change_nick(query, nick);
	}

	if (query->address == NULL || strcmp(query->address, address) != 0) {
                /* host changed */
		query_change_address(query, address);
	}
}