aboutsummaryrefslogtreecommitdiffstats
path: root/protocols/jabber/jabber.c
diff options
context:
space:
mode:
authorWilmer van der Gaast <wilmer@gaast.net>2010-03-21 16:17:24 +0000
committerWilmer van der Gaast <wilmer@gaast.net>2010-03-21 16:17:24 +0000
commit85693e62c8e847ee0336419c3f229bb5caac29a0 (patch)
tree1e1dbba1cba752b75dcf44394f7d6a0a0b14f934 /protocols/jabber/jabber.c
parent81ee561d520e38535fb6947ac0e3fba808e6de4b (diff)
parent767a148faa35c18cdf4da77b5919a2f6e2df868a (diff)
Merging in killerbee stuff (just file transfers and maybe a few things from
mainline). Once I add ft support glue to protocols/purple/ I guess this will all go into killerbee.
Diffstat (limited to 'protocols/jabber/jabber.c')
-rw-r--r--protocols/jabber/jabber.c15
1 files changed, 15 insertions, 0 deletions
diff --git a/protocols/jabber/jabber.c b/protocols/jabber/jabber.c
index 86320ada..956769b7 100644
--- a/protocols/jabber/jabber.c
+++ b/protocols/jabber/jabber.c
@@ -64,6 +64,8 @@ static void jabber_init( account_t *acc )
s->flags |= ACC_SET_OFFLINE_ONLY;
s = set_add( &acc->set, "priority", "0", set_eval_priority, acc );
+
+ s = set_add( &acc->set, "proxy", "<local>;<auto>", NULL, acc );
s = set_add( &acc->set, "resource", "BitlBee", NULL, acc );
s->flags |= ACC_SET_OFFLINE_ONLY;
@@ -263,6 +265,18 @@ static void jabber_logout( struct im_connection *ic )
{
struct jabber_data *jd = ic->proto_data;
+ while( jd->filetransfers )
+ imcb_file_canceled( ( ( struct jabber_transfer *) jd->filetransfers->data )->ft, "Logging out" );
+
+ while( jd->streamhosts )
+ {
+ jabber_streamhost_t *sh = jd->streamhosts->data;
+ jd->streamhosts = g_slist_remove( jd->streamhosts, sh );
+ g_free( sh->jid );
+ g_free( sh->host );
+ g_free( sh );
+ }
+
if( jd->fd >= 0 )
jabber_end_stream( ic );
@@ -543,6 +557,7 @@ void jabber_initmodule()
ret->keepalive = jabber_keepalive;
ret->send_typing = jabber_send_typing;
ret->handle_cmp = g_strcasecmp;
+ ret->transfer_request = jabber_si_transfer_request;
register_protocol( ret );
}