libpurple/protocols/jabber/jabber.c

changeset 41814
f8940ebd4eee
parent 41812
c3cd920261b6
child 41866
dadd84e44a30
equal deleted inserted replaced
41813:86302ce7e3c1 41814:f8940ebd4eee
1001 "xmpp-client", js->cancellable, 1001 "xmpp-client", js->cancellable,
1002 srv_resolved_cb, js); 1002 srv_resolved_cb, js);
1003 } 1003 }
1004 } 1004 }
1005 1005
1006 static PurpleConnection * 1006 static void
1007 jabber_login(G_GNUC_UNUSED PurpleProtocol *protocol, PurpleAccount *account, 1007 jabber_login(G_GNUC_UNUSED PurpleProtocol *protocol, PurpleAccount *account) {
1008 const char *password) 1008 PurpleConnection *gc = purple_account_get_connection(account);
1009 {
1010 PurpleConnection *gc = NULL;
1011 JabberStream *js; 1009 JabberStream *js;
1012 PurpleImage *image; 1010 PurpleImage *image;
1013
1014 gc = purple_connection_new(protocol, account, password);
1015 1011
1016 purple_connection_set_flags(gc, PURPLE_CONNECTION_FLAG_HTML | 1012 purple_connection_set_flags(gc, PURPLE_CONNECTION_FLAG_HTML |
1017 PURPLE_CONNECTION_FLAG_NO_IMAGES); 1013 PURPLE_CONNECTION_FLAG_NO_IMAGES);
1018 js = jabber_stream_new(account); 1014 js = jabber_stream_new(account);
1019 if (js == NULL) 1015 if (js == NULL)
1020 return gc; 1016 return;
1021 1017
1022 /* replace old default proxies with the new default: NULL 1018 /* replace old default proxies with the new default: NULL
1023 * TODO: these can eventually be removed */ 1019 * TODO: these can eventually be removed */
1024 if (purple_strequal("proxy.jabber.org", purple_account_get_string(account, "ft_proxies", "")) 1020 if (purple_strequal("proxy.jabber.org", purple_account_get_string(account, "ft_proxies", ""))
1025 || purple_strequal("proxy.eu.jabber.org", purple_account_get_string(account, "ft_proxies", ""))) 1021 || purple_strequal("proxy.eu.jabber.org", purple_account_get_string(account, "ft_proxies", "")))
1039 ); 1035 );
1040 g_object_unref(image); 1036 g_object_unref(image);
1041 } 1037 }
1042 1038
1043 jabber_stream_connect(js); 1039 jabber_stream_connect(js);
1044
1045 return gc;
1046 } 1040 }
1047 1041
1048 1042
1049 static gboolean 1043 static gboolean
1050 conn_close_cb(gpointer data) 1044 conn_close_cb(gpointer data)
1497 { 1491 {
1498 PurpleConnection *gc = purple_account_get_connection(account); 1492 PurpleConnection *gc = purple_account_get_connection(account);
1499 JabberStream *js; 1493 JabberStream *js;
1500 1494
1501 if (purple_connection_get_state(gc) != PURPLE_CONNECTION_STATE_CONNECTED) { 1495 if (purple_connection_get_state(gc) != PURPLE_CONNECTION_STATE_CONNECTED) {
1502 #warning fix registration and unregistration 1496 if (purple_connection_get_state(gc) != PURPLE_CONNECTION_STATE_CONNECTING) {
1503 #if 0
1504 if (purple_connection_get_state(gc) != PURPLE_CONNECTION_CONNECTING) {
1505 jabber_login(PURPLE_PROTOCOL(protocol_server), account); 1497 jabber_login(PURPLE_PROTOCOL(protocol_server), account);
1506 } 1498 }
1507 #endif
1508 1499
1509 js = purple_connection_get_protocol_data(gc); 1500 js = purple_connection_get_protocol_data(gc);
1510 js->unregistration = TRUE; 1501 js->unregistration = TRUE;
1511 js->unregistration_cb = cb; 1502 js->unregistration_cb = cb;
1512 js->unregistration_user_data = user_data; 1503 js->unregistration_user_data = user_data;

mercurial