| 355 if (js->server_caps & JABBER_CAP_ADHOC) { |
355 if (js->server_caps & JABBER_CAP_ADHOC) { |
| 356 /* The server supports ad-hoc commands, so let's request the list */ |
356 /* The server supports ad-hoc commands, so let's request the list */ |
| 357 jabber_adhoc_server_get_list(js); |
357 jabber_adhoc_server_get_list(js); |
| 358 } |
358 } |
| 359 |
359 |
| |
360 /* If the server supports blocking, request the block list */ |
| |
361 if (js->server_caps & JABBER_CAP_BLOCKING) { |
| |
362 jabber_request_block_list(js); |
| |
363 } |
| |
364 |
| 360 /* If there are manually specified bytestream proxies, query them */ |
365 /* If there are manually specified bytestream proxies, query them */ |
| 361 ft_proxies = purple_account_get_string(js->gc->account, "ft_proxies", NULL); |
366 ft_proxies = purple_account_get_string(js->gc->account, "ft_proxies", NULL); |
| 362 if (ft_proxies) { |
367 if (ft_proxies) { |
| 363 JabberIq *iq; |
368 JabberIq *iq; |
| 364 JabberBytestreamsStreamhost *sh; |
369 JabberBytestreamsStreamhost *sh; |
| 454 } else if (!strcmp("google:roster", var)) { |
459 } else if (!strcmp("google:roster", var)) { |
| 455 js->server_caps |= JABBER_CAP_GOOGLE_ROSTER; |
460 js->server_caps |= JABBER_CAP_GOOGLE_ROSTER; |
| 456 jabber_google_roster_init(js); |
461 jabber_google_roster_init(js); |
| 457 } else if (!strcmp("http://jabber.org/protocol/commands", var)) { |
462 } else if (!strcmp("http://jabber.org/protocol/commands", var)) { |
| 458 js->server_caps |= JABBER_CAP_ADHOC; |
463 js->server_caps |= JABBER_CAP_ADHOC; |
| |
464 } else if (!strcmp("urn:xmpp:blocking", var)) { |
| |
465 js->server_caps |= JABBER_CAP_BLOCKING; |
| 459 } |
466 } |
| 460 } |
467 } |
| 461 |
468 |
| 462 jabber_disco_finish_server_info_result_cb(js); |
469 jabber_disco_finish_server_info_result_cb(js); |
| 463 } |
470 } |