comparison libpurple/protocols/jabber/libxmpp.c @ 25985:c4fd9222dda1

propagate from branch 'im.pidgin.pidgin' (head 303af74a38e7b313d4fb0be4d4054a16cb13d819) to branch 'im.pidgin.cpw.darkrain42.xmpp.bosh' (head 650d82b8a5f0c8860804dd8004cd54badea48e1e)
author Paul Aurich <paul@darkrain42.org>
date Sat, 07 Mar 2009 01:59:40 +0000
parents 5f9a24d1c25e 7d2e85f78aec
children 882748e27f9d
comparison
equal deleted inserted replaced
25977:0e93bbb7f5ca 25985:c4fd9222dda1
68 jabber_close, /* close */ 68 jabber_close, /* close */
69 jabber_message_send_im, /* send_im */ 69 jabber_message_send_im, /* send_im */
70 jabber_set_info, /* set_info */ 70 jabber_set_info, /* set_info */
71 jabber_send_typing, /* send_typing */ 71 jabber_send_typing, /* send_typing */
72 jabber_buddy_get_info, /* get_info */ 72 jabber_buddy_get_info, /* get_info */
73 jabber_presence_send, /* set_status */ 73 jabber_set_status, /* set_status */
74 jabber_idle_set, /* set_idle */ 74 jabber_idle_set, /* set_idle */
75 NULL, /* change_passwd */ 75 NULL, /* change_passwd */
76 jabber_roster_add_buddy, /* add_buddy */ 76 jabber_roster_add_buddy, /* add_buddy */
77 NULL, /* add_buddies */ 77 NULL, /* add_buddies */
78 jabber_roster_remove_buddy, /* remove_buddy */ 78 jabber_roster_remove_buddy, /* remove_buddy */
148 148
149 purple_signal_unregister(plugin, "jabber-sending-xmlnode"); 149 purple_signal_unregister(plugin, "jabber-sending-xmlnode");
150 150
151 purple_signal_unregister(plugin, "jabber-sending-text"); 151 purple_signal_unregister(plugin, "jabber-sending-text");
152 152
153 /* reverse order of init_plugin */
154 jabber_bosh_uninit();
153 jabber_data_uninit(); 155 jabber_data_uninit();
154 jabber_si_uninit(); 156 jabber_si_uninit();
155 jabber_ibb_uninit(); 157 jabber_ibb_uninit();
158 /* PEP things should be uninit via jabber_pep_uninit, not here */
159 jabber_pep_uninit();
160 jabber_caps_uninit();
161 jabber_iq_uninit();
162
163 /* Stay on target...stay on target... Almost there... */
164 jabber_uninit_plugin();
156 165
157 return TRUE; 166 return TRUE;
158 } 167 }
159 168
160 static PurplePluginInfo info = 169 static PurplePluginInfo info =
204 #endif 213 #endif
205 int ret; 214 int ret;
206 #endif 215 #endif
207 PurpleAccountUserSplit *split; 216 PurpleAccountUserSplit *split;
208 PurpleAccountOption *option; 217 PurpleAccountOption *option;
209
210 /* Translators: 'domain' is used here in the context of Internet domains, e.g. pidgin.im */ 218 /* Translators: 'domain' is used here in the context of Internet domains, e.g. pidgin.im */
211 split = purple_account_user_split_new(_("Domain"), NULL, '@'); 219 split = purple_account_user_split_new(_("Domain"), NULL, '@');
212 purple_account_user_split_set_reverse(split, FALSE); 220 purple_account_user_split_set_reverse(split, FALSE);
213 prpl_info.user_splits = g_list_append(prpl_info.user_splits, split); 221 prpl_info.user_splits = g_list_append(prpl_info.user_splits, split);
214
215 split = purple_account_user_split_new(_("Resource"), NULL, '/'); 222 split = purple_account_user_split_new(_("Resource"), NULL, '/');
216 purple_account_user_split_set_reverse(split, FALSE); 223 purple_account_user_split_set_reverse(split, FALSE);
217 prpl_info.user_splits = g_list_append(prpl_info.user_splits, split); 224 prpl_info.user_splits = g_list_append(prpl_info.user_splits, split);
218
219 option = purple_account_option_bool_new(_("Require SSL/TLS"), "require_tls", FALSE); 225 option = purple_account_option_bool_new(_("Require SSL/TLS"), "require_tls", FALSE);
220 prpl_info.protocol_options = g_list_append(prpl_info.protocol_options, 226 prpl_info.protocol_options = g_list_append(prpl_info.protocol_options,
221 option); 227 option);
222
223 option = purple_account_option_bool_new(_("Force old (port 5223) SSL"), "old_ssl", FALSE); 228 option = purple_account_option_bool_new(_("Force old (port 5223) SSL"), "old_ssl", FALSE);
224 prpl_info.protocol_options = g_list_append(prpl_info.protocol_options, 229 prpl_info.protocol_options = g_list_append(prpl_info.protocol_options,
225 option); 230 option);
226
227 option = purple_account_option_bool_new( 231 option = purple_account_option_bool_new(
228 _("Allow plaintext auth over unencrypted streams"), 232 _("Allow plaintext auth over unencrypted streams"),
229 "auth_plain_in_clear", FALSE); 233 "auth_plain_in_clear", FALSE);
230 prpl_info.protocol_options = g_list_append(prpl_info.protocol_options, 234 prpl_info.protocol_options = g_list_append(prpl_info.protocol_options,
231 option); 235 option);
274 SetErrorMode(old_error_mode); 278 SetErrorMode(old_error_mode);
275 #endif 279 #endif
276 #endif 280 #endif
277 jabber_register_commands(); 281 jabber_register_commands();
278 282
283 /* reverse order of unload_plugin */
279 jabber_iq_init(); 284 jabber_iq_init();
285 jabber_caps_init();
286 /* PEP things should be init via jabber_pep_init, not here */
280 jabber_pep_init(); 287 jabber_pep_init();
281
282 jabber_tune_init();
283 jabber_caps_init();
284
285 jabber_data_init(); 288 jabber_data_init();
286 289 jabber_bosh_init();
290
291 #warning implement adding and retrieving own features via IPC API
287 292
288 jabber_ibb_init(); 293 jabber_ibb_init();
289 jabber_si_init(); 294 jabber_si_init();
290 295
291 jabber_add_feature("avatarmeta", AVATARNAMESPACEMETA, jabber_pep_namespace_only_when_pep_enabled_cb); 296 jabber_add_feature(AVATARNAMESPACEMETA, jabber_pep_namespace_only_when_pep_enabled_cb);
292 jabber_add_feature("avatardata", AVATARNAMESPACEDATA, jabber_pep_namespace_only_when_pep_enabled_cb); 297 jabber_add_feature(AVATARNAMESPACEDATA, jabber_pep_namespace_only_when_pep_enabled_cb);
293 jabber_add_feature("buzz", XEP_0224_NAMESPACE, 298 jabber_add_feature("http://www.xmpp.org/extensions/xep-0224.html#ns",
294 jabber_buzz_isenabled); 299 jabber_buzz_isenabled);
295 jabber_add_feature("bob", XEP_0231_NAMESPACE, 300 jabber_add_feature(XEP_0231_NAMESPACE, jabber_custom_smileys_isenabled);
296 jabber_custom_smileys_isenabled); 301 jabber_add_feature(XEP_0047_NAMESPACE, NULL);
297 jabber_add_feature("ibb", XEP_0047_NAMESPACE, NULL); 302
298 303 jabber_pep_register_handler(AVATARNAMESPACEMETA, jabber_buddy_avatar_update_metadata);
299 jabber_pep_register_handler("avatar", AVATARNAMESPACEMETA, jabber_buddy_avatar_update_metadata);
300 } 304 }
301 305
302 306
303 PURPLE_INIT_PLUGIN(jabber, init_plugin, info); 307 PURPLE_INIT_PLUGIN(jabber, init_plugin, info);