Mercurial > pidgin
changeset 11083:8faabf4081ca
[gaim-migrate @ 13101]
sf patch #1225691, from Levi Bard
Implements gc->keepalive for irc
committer: Tailor Script <tailor@pidgin.im>
author | Mark Doliner <mark@kingant.net> |
---|---|
date | Mon, 11 Jul 2005 00:36:28 +0000 |
parents | e25575a59f01 |
children | 2c21bffa8200 |
files | src/protocols/irc/irc.c |
diffstat | 1 files changed, 12 insertions(+), 1 deletions(-) [+] |
line wrap: on
line diff
--- a/src/protocols/irc/irc.c Sun Jul 10 22:12:37 2005 +0000 +++ b/src/protocols/irc/irc.c Mon Jul 11 00:36:28 2005 +0000 @@ -51,6 +51,7 @@ static void irc_close(GaimConnection *gc); static int irc_im_send(GaimConnection *gc, const char *who, const char *what, GaimConvImFlags flags); static int irc_chat_send(GaimConnection *gc, int id, const char *what); +static void irc_ping_server(GaimConnection *gc); static void irc_chat_join (GaimConnection *gc, GHashTable *data); static void irc_input_cb(gpointer data, gint source, GaimInputCondition cond); static void irc_input_cb_ssl(gpointer data, GaimSslConnection *gsc, GaimInputCondition cond); @@ -627,6 +628,16 @@ return 0; } +static void irc_ping_server(GaimConnection *gc) +{ + struct irc_conn *irc = gc->proto_data; + gchar *buf; + + buf = irc_format(irc, "vv", "PING", irc->server); + irc_send(irc, buf); + g_free(buf); +} + static guint irc_nick_hash(const char *nick) { char *lc; @@ -778,7 +789,7 @@ irc_chat_leave, /* chat_leave */ NULL, /* chat_whisper */ irc_chat_send, /* chat_send */ - NULL, /* keepalive */ + irc_ping_server, /* keepalive */ NULL, /* register_user */ NULL, /* get_cb_info */ NULL, /* get_cb_away */