Mercurial > pidgin
comparison libpurple/protocols/jabber/jabber.c @ 26657:91b70522776e
merge of '510f4315d6f580dfe97834a04ae726edf736a9d6'
and '70280062175f62b2632fae62b02997c8dca832b7'
author | Paul Aurich <paul@darkrain42.org> |
---|---|
date | Sat, 18 Apr 2009 17:50:52 +0000 |
parents | a8dbbcd069ab e9a8e363d957 |
children | 3912f55a1633 |
comparison
equal
deleted
inserted
replaced
26656:a8dbbcd069ab | 26657:91b70522776e |
---|---|
1293 js->stun_port = 0; | 1293 js->stun_port = 0; |
1294 js->stun_query = NULL; | 1294 js->stun_query = NULL; |
1295 | 1295 |
1296 jabber_stream_set_state(js, JABBER_STREAM_CONNECTING); | 1296 jabber_stream_set_state(js, JABBER_STREAM_CONNECTING); |
1297 | 1297 |
1298 /* TODO: Just use purple_url_parse? */ | |
1299 if (!g_ascii_strncasecmp(connect_server, "http://", 7) || !g_ascii_strncasecmp(connect_server, "https://", 8)) { | |
1300 js->use_bosh = TRUE; | |
1301 js->bosh = jabber_bosh_connection_init(js, connect_server); | |
1302 if (!js->bosh) { | |
1303 purple_connection_error_reason (js->gc, | |
1304 PURPLE_CONNECTION_ERROR_INVALID_SETTINGS, | |
1305 _("Malformed BOSH Connect Server")); | |
1306 return; | |
1307 } | |
1308 jabber_bosh_connection_connect(js->bosh); | |
1309 return; | |
1310 } else { | |
1311 js->certificate_CN = g_strdup(connect_server[0] ? connect_server : js->user->domain); | |
1312 } | |
1313 | |
1298 if(purple_account_get_bool(account, "old_ssl", FALSE)) { | 1314 if(purple_account_get_bool(account, "old_ssl", FALSE)) { |
1299 if(purple_ssl_is_supported()) { | 1315 if(purple_ssl_is_supported()) { |
1300 js->gsc = purple_ssl_connect(account, server, | 1316 js->gsc = purple_ssl_connect(account, server, |
1301 purple_account_get_int(account, "port", 5222), | 1317 purple_account_get_int(account, "port", 5222), |
1302 jabber_login_callback_ssl, jabber_ssl_connect_failure, gc); | 1318 jabber_login_callback_ssl, jabber_ssl_connect_failure, gc); |
1319 if (!js->gsc) { | |
1320 purple_connection_error_reason (js->gc, | |
1321 PURPLE_CONNECTION_ERROR_NO_SSL_SUPPORT, | |
1322 _("Unable to establish SSL connection")); | |
1323 } | |
1303 } else { | 1324 } else { |
1304 purple_connection_error_reason (gc, | 1325 purple_connection_error_reason (gc, |
1305 PURPLE_CONNECTION_ERROR_NO_SSL_SUPPORT, | 1326 PURPLE_CONNECTION_ERROR_NO_SSL_SUPPORT, |
1306 _("SSL support unavailable")); | 1327 _("SSL support unavailable")); |
1307 } | 1328 } |
1308 } | 1329 |
1309 | 1330 return; |
1310 if(!js->gsc) { | 1331 } |
1311 if (connect_server[0]) { | 1332 |
1312 jabber_login_connect(js, js->user->domain, server, | 1333 if (connect_server[0]) { |
1313 purple_account_get_int(account, | 1334 jabber_login_connect(js, js->user->domain, server, |
1314 "port", 5222), TRUE); | 1335 purple_account_get_int(account, |
1315 } else { | 1336 "port", 5222), TRUE); |
1316 js->srv_query_data = purple_srv_resolve("xmpp-client", | 1337 } else { |
1317 "tcp", | 1338 js->srv_query_data = purple_srv_resolve("xmpp-client", |
1318 js->user->domain, | 1339 "tcp", |
1319 srv_resolved_cb, | 1340 js->user->domain, |
1320 js); | 1341 srv_resolved_cb, |
1321 } | 1342 js); |
1322 } | 1343 } |
1323 } | 1344 } |
1324 | 1345 |
1325 static void | 1346 static void |
1326 jabber_unregister_account_iq_cb(JabberStream *js, const char *from, | 1347 jabber_unregister_account_iq_cb(JabberStream *js, const char *from, |