view plugins/crazychat/cc_network.h @ 13998:4fa4f2909b0d

[gaim-migrate @ 16583] Fix a crash when gadu-gadu signs off while a search is still open. It destroys its search HashTable in its close() function, and that table is accessed when gaim_notify_close_with_handle() is called. An alternative fix would be for the close_with_handle() functions to be called before prpl_info->close() in connection.c, but I'm not positive that this wouldn't cause problems with other prpls, so I went for a smaller-impact change. I'll merge this back to the 2.0.0 branch if there are no objections. committer: Tailor Script <tailor@pidgin.im>
author Evan Schoenberg <evan.s@dreskin.net>
date Thu, 27 Jul 2006 17:37:42 +0000
parents 8bcd4d4ccef6
children
line wrap: on
line source

#ifndef __CC_NETWORK_H__
#define __CC_NETWORK_H__

#include "account.h"
#include "conversation.h"
#include "crazychat.h"

/* --- begin constant definition --- */

#define DEFAULT_CC_PORT		6543

#define CRAZYCHAT_INVITE_CODE	"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA" \
				"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA" \
				"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA" \
				"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA" \
				"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA" \
				"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
#define CRAZYCHAT_ACCEPT_CODE	"BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB" \
				"BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB" \
				"BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB" \
				"BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB" \
				"BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB" \
				"BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB"
#define CRAZYCHAT_READY_CODE	"CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC" \
				"CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC" \
				"CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC" \
				"CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC" \
				"CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC" \
				"CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC"

/* --- begin function declarations --- */

/**
 * Creates a new CrazyChat session if one doesn't exist and sends the invite.
 * @param cc		global crazychat data structure
 * @param name		the peer name
 * @param account	the gaim account
 */
void cc_net_send_invite(struct crazychat *cc, char *name, GaimAccount *account);

/**
 * Pops up the CrazyChat invitation accept window if a CrazyChat session does
 * not exist yet for this peer.
 * @param account	gaim account
 * @param cc		global crazychat data structure
 * @param name		the peer name
 * @param peer_ip	the peer's ip address
 * @param peer_port	the peer's tcp port
 */
void cc_net_recv_invite(GaimAccount *account, struct crazychat *cc, char *name,
		const char *peer_ip, const char *peer_port);

/**
 * Accepts the CrazyChat invitation and sends the response.
 * @param session	the CrazyChat session
 */
void cc_net_send_accept(struct cc_session *session);

/**
 * Receives a CrazyChat accept message, and if appropriate, creates a server
 * socket and sends the ready message.
 * @param account	the gaim account which received the message
 * @param cc		global crazychat data structure
 * @param name		the peer name
 * @param peer_ip	the peer's ip address
 */
void cc_net_recv_accept(GaimAccount *account, struct crazychat *cc, char *name,
		const char *peer_ip);

/**
 * Receives a CrazyChat ready message, and if appropriate, connects to peer
 * @param account	the gaim account which received the message
 * @param cc		global crazychat data structure
 * @param name		the peer name
 */
void cc_net_recv_ready(GaimAccount *account, struct crazychat *cc, char *name);

#endif