Thu, 20 Sep 2007 16:30:17 +0000
Use an independant status type for 'current media' stuff, instead of using
status attributes. This includes changes in both xmpp and msn.
Also, in MSN, CurrentMedia is sent with PSM if you turn on the status and
set the attributes on the account.
| 16303 | 1 | /* purple |
| 2 | * | |
| 3 | * Purple is the legal property of its developers, whose names are too numerous | |
| 4 | * to list here. Please refer to the COPYRIGHT file distributed with this | |
| 5 | * source distribution. | |
| 6 | * | |
| 7 | * This program is free software; you can redistribute it and/or modify | |
| 8 | * it under the terms of the GNU General Public License as published by | |
| 9 | * the Free Software Foundation; either version 2 of the License, or | |
| 10 | * (at your option) any later version. | |
| 11 | * | |
| 12 | * This program is distributed in the hope that it will be useful, | |
| 13 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | |
| 14 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
| 15 | * GNU General Public License for more details. | |
| 16 | * | |
| 17 | * You should have received a copy of the GNU General Public License | |
| 18 | * along with this program; if not, write to the Free Software | |
|
19859
71d37b57eff2
The FSF changed its address a while ago; our files were out of date.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
18273
diff
changeset
|
19 | * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA |
| 16303 | 20 | * |
| 21 | */ | |
| 22 | ||
| 23 | /* libxmpp is the XMPP protocol plugin. It is linked against libjabbercommon, | |
| 24 | * which may be used to support other protocols (Bonjour) which may need to | |
| 25 | * share code. | |
| 26 | */ | |
| 27 | ||
|
18273
e61c53184c52
#include reorganizations to allow compiling with glib < 2.8 using the
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
18178
diff
changeset
|
28 | #include "internal.h" |
|
e61c53184c52
#include reorganizations to allow compiling with glib < 2.8 using the
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
18178
diff
changeset
|
29 | |
| 16303 | 30 | #include "accountopt.h" |
|
19992
3cdb4f27fb7c
Cleanup the SASL init and add error checking.
Daniel Atallah <datallah@pidgin.im>
parents:
19897
diff
changeset
|
31 | #include "debug.h" |
| 16303 | 32 | #include "version.h" |
| 33 | ||
| 34 | #include "iq.h" | |
| 35 | #include "jabber.h" | |
| 36 | #include "chat.h" | |
| 37 | #include "message.h" | |
| 38 | #include "roster.h" | |
| 39 | #include "si.h" | |
| 40 | #include "message.h" | |
| 41 | #include "presence.h" | |
| 42 | #include "google.h" | |
|
17773
6956b763b3d1
Implemented adding callbacks for PEP events. Moved the feature list to be application-global instead of per-connection (makes more sense).
Andreas Monitzer <am@adiumx.com>
parents:
17012
diff
changeset
|
43 | #include "pep.h" |
|
17791
b947d72db9db
Implemented user tune, currently untested.
Andreas Monitzer <am@adiumx.com>
parents:
17788
diff
changeset
|
44 | #include "usertune.h" |
|
17816
1b7362b4a7a2
Implemented ad-hoc commands for the buddy action menu (untested), implemented the receiving end of XEP-0115: Entity Capabilities. Note that this seems not to be reliable right now, since some clients seem to have a very broken [read: completely non-functional] implementation (most notably Gajim and the py-transports).
Andreas Monitzer <am@adiumx.com>
parents:
17800
diff
changeset
|
45 | #include "caps.h" |
| 16303 | 46 | |
| 47 | static PurplePluginProtocolInfo prpl_info = | |
| 48 | { | |
|
19992
3cdb4f27fb7c
Cleanup the SASL init and add error checking.
Daniel Atallah <datallah@pidgin.im>
parents:
19897
diff
changeset
|
49 | OPT_PROTO_CHAT_TOPIC | OPT_PROTO_UNIQUE_CHATNAME | OPT_PROTO_MAIL_CHECK | |
| 16303 | 50 | #ifdef HAVE_CYRUS_SASL |
|
19992
3cdb4f27fb7c
Cleanup the SASL init and add error checking.
Daniel Atallah <datallah@pidgin.im>
parents:
19897
diff
changeset
|
51 | OPT_PROTO_PASSWORD_OPTIONAL | |
|
3cdb4f27fb7c
Cleanup the SASL init and add error checking.
Daniel Atallah <datallah@pidgin.im>
parents:
19897
diff
changeset
|
52 | #endif |
|
18092
1a2362194473
Mostly taken from the patch on ticket #410, don't send unknown slash
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
17012
diff
changeset
|
53 | OPT_PROTO_SLASH_COMMANDS_NATIVE, |
| 16303 | 54 | NULL, /* user_splits */ |
| 55 | NULL, /* protocol_options */ | |
|
17787
439329d20337
Added support for setting the avatar via XEP-0084. Receiving other people's avatar is up next.
Andreas Monitzer <am@adiumx.com>
parents:
17773
diff
changeset
|
56 | {"png", 32, 32, 96, 96, 8191, PURPLE_ICON_SCALE_SEND | PURPLE_ICON_SCALE_DISPLAY}, /* icon_spec */ |
| 16303 | 57 | jabber_list_icon, /* list_icon */ |
| 58 | jabber_list_emblem, /* list_emblems */ | |
| 59 | jabber_status_text, /* status_text */ | |
| 60 | jabber_tooltip_text, /* tooltip_text */ | |
| 61 | jabber_status_types, /* status_types */ | |
| 62 | jabber_blist_node_menu, /* blist_node_menu */ | |
| 63 | jabber_chat_info, /* chat_info */ | |
| 64 | jabber_chat_info_defaults, /* chat_info_defaults */ | |
| 65 | jabber_login, /* login */ | |
| 66 | jabber_close, /* close */ | |
| 67 | jabber_message_send_im, /* send_im */ | |
| 68 | jabber_set_info, /* set_info */ | |
| 69 | jabber_send_typing, /* send_typing */ | |
| 70 | jabber_buddy_get_info, /* get_info */ | |
| 17683 | 71 | jabber_presence_send, /* set_status */ |
| 16303 | 72 | jabber_idle_set, /* set_idle */ |
| 73 | NULL, /* change_passwd */ | |
| 74 | jabber_roster_add_buddy, /* add_buddy */ | |
| 75 | NULL, /* add_buddies */ | |
| 76 | jabber_roster_remove_buddy, /* remove_buddy */ | |
| 77 | NULL, /* remove_buddies */ | |
| 78 | NULL, /* add_permit */ | |
| 79 | jabber_google_roster_add_deny, /* add_deny */ | |
| 80 | NULL, /* rem_permit */ | |
| 81 | jabber_google_roster_rem_deny, /* rem_deny */ | |
| 82 | NULL, /* set_permit_deny */ | |
| 83 | jabber_chat_join, /* join_chat */ | |
| 84 | NULL, /* reject_chat */ | |
| 85 | jabber_get_chat_name, /* get_chat_name */ | |
| 86 | jabber_chat_invite, /* chat_invite */ | |
| 87 | jabber_chat_leave, /* chat_leave */ | |
| 88 | NULL, /* chat_whisper */ | |
| 89 | jabber_message_send_chat, /* chat_send */ | |
| 90 | jabber_keepalive, /* keepalive */ | |
| 91 | jabber_register_account, /* register_user */ | |
| 92 | jabber_buddy_get_info_chat, /* get_cb_info */ | |
| 93 | NULL, /* get_cb_away */ | |
| 94 | jabber_roster_alias_change, /* alias_buddy */ | |
| 95 | jabber_roster_group_change, /* group_buddy */ | |
| 96 | jabber_roster_group_rename, /* rename_group */ | |
| 97 | NULL, /* buddy_free */ | |
| 98 | jabber_convo_closed, /* convo_closed */ | |
| 99 | jabber_normalize, /* normalize */ | |
| 100 | jabber_set_buddy_icon, /* set_buddy_icon */ | |
| 101 | NULL, /* remove_group */ | |
| 102 | jabber_chat_buddy_real_name, /* get_cb_real_name */ | |
| 103 | jabber_chat_set_topic, /* set_chat_topic */ | |
| 104 | jabber_find_blist_chat, /* find_blist_chat */ | |
| 105 | jabber_roomlist_get_list, /* roomlist_get_list */ | |
| 106 | jabber_roomlist_cancel, /* roomlist_cancel */ | |
| 107 | NULL, /* roomlist_expand_category */ | |
| 108 | NULL, /* can_receive_file */ | |
| 109 | jabber_si_xfer_send, /* send_file */ | |
| 110 | jabber_si_new_xfer, /* new_xfer */ | |
| 111 | jabber_offline_message, /* offline_message */ | |
| 112 | NULL, /* whiteboard_prpl_ops */ | |
| 113 | jabber_prpl_send_raw, /* send_raw */ | |
| 114 | jabber_roomlist_room_serialize, /* roomlist_room_serialize */ | |
|
18912
606597744812
Added unregistering XMPP accounts. This requires a new prpl-struct entry, but I got an ok for that on the mailing list.
Andreas Monitzer <am@adiumx.com>
parents:
18718
diff
changeset
|
115 | jabber_unregister_account, /* unregister_user */ |
|
16746
72faf41c3c4f
And now the protocols
Gary Kramlich <grim@reaperworld.com>
parents:
16303
diff
changeset
|
116 | |
|
72faf41c3c4f
And now the protocols
Gary Kramlich <grim@reaperworld.com>
parents:
16303
diff
changeset
|
117 | /* padding */ |
|
72faf41c3c4f
And now the protocols
Gary Kramlich <grim@reaperworld.com>
parents:
16303
diff
changeset
|
118 | NULL, |
|
72faf41c3c4f
And now the protocols
Gary Kramlich <grim@reaperworld.com>
parents:
16303
diff
changeset
|
119 | NULL, |
|
72faf41c3c4f
And now the protocols
Gary Kramlich <grim@reaperworld.com>
parents:
16303
diff
changeset
|
120 | NULL |
| 16303 | 121 | }; |
| 122 | ||
| 123 | static gboolean load_plugin(PurplePlugin *plugin) | |
| 124 | { | |
| 125 | purple_signal_register(plugin, "jabber-receiving-xmlnode", | |
| 126 | purple_marshal_VOID__POINTER_POINTER, NULL, 2, | |
| 127 | purple_value_new(PURPLE_TYPE_SUBTYPE, PURPLE_SUBTYPE_CONNECTION), | |
| 128 | purple_value_new_outgoing(PURPLE_TYPE_SUBTYPE, PURPLE_SUBTYPE_XMLNODE)); | |
| 129 | ||
| 130 | purple_signal_register(plugin, "jabber-sending-xmlnode", | |
| 131 | purple_marshal_VOID__POINTER_POINTER, NULL, 2, | |
| 132 | purple_value_new(PURPLE_TYPE_SUBTYPE, PURPLE_SUBTYPE_CONNECTION), | |
| 133 | purple_value_new_outgoing(PURPLE_TYPE_SUBTYPE, PURPLE_SUBTYPE_XMLNODE)); | |
| 134 | ||
| 135 | purple_signal_register(plugin, "jabber-sending-text", | |
| 136 | purple_marshal_VOID__POINTER_POINTER, NULL, 2, | |
| 137 | purple_value_new(PURPLE_TYPE_SUBTYPE, PURPLE_SUBTYPE_CONNECTION), | |
| 138 | purple_value_new_outgoing(PURPLE_TYPE_STRING)); | |
| 139 | ||
| 140 | ||
| 141 | return TRUE; | |
| 142 | } | |
| 143 | ||
| 144 | static gboolean unload_plugin(PurplePlugin *plugin) | |
| 145 | { | |
| 146 | purple_signal_unregister(plugin, "jabber-receiving-xmlnode"); | |
| 147 | ||
| 148 | purple_signal_unregister(plugin, "jabber-sending-xmlnode"); | |
| 149 | ||
| 150 | purple_signal_unregister(plugin, "jabber-sending-text"); | |
| 151 | ||
| 152 | return TRUE; | |
| 153 | } | |
| 154 | ||
| 155 | static PurplePluginInfo info = | |
| 156 | { | |
| 157 | PURPLE_PLUGIN_MAGIC, | |
| 158 | PURPLE_MAJOR_VERSION, | |
| 159 | PURPLE_MINOR_VERSION, | |
| 160 | PURPLE_PLUGIN_PROTOCOL, /**< type */ | |
| 161 | NULL, /**< ui_requirement */ | |
| 162 | 0, /**< flags */ | |
| 163 | NULL, /**< dependencies */ | |
| 164 | PURPLE_PRIORITY_DEFAULT, /**< priority */ | |
| 165 | ||
| 166 | "prpl-jabber", /**< id */ | |
| 167 | "XMPP", /**< name */ | |
| 168 | VERSION, /**< version */ | |
| 169 | /** summary */ | |
|
16961
b6955f946f8f
s/Jabber/XMPP in user-visible places.
Richard Laager <rlaager@pidgin.im>
parents:
16799
diff
changeset
|
170 | N_("XMPP Protocol Plugin"), |
| 16303 | 171 | /** description */ |
|
16961
b6955f946f8f
s/Jabber/XMPP in user-visible places.
Richard Laager <rlaager@pidgin.im>
parents:
16799
diff
changeset
|
172 | N_("XMPP Protocol Plugin"), |
| 16303 | 173 | NULL, /**< author */ |
| 174 | PURPLE_WEBSITE, /**< homepage */ | |
| 175 | ||
| 176 | load_plugin, /**< load */ | |
| 177 | unload_plugin, /**< unload */ | |
| 178 | NULL, /**< destroy */ | |
| 179 | ||
| 180 | NULL, /**< ui_info */ | |
| 181 | &prpl_info, /**< extra_info */ | |
| 182 | NULL, /**< prefs_info */ | |
|
16746
72faf41c3c4f
And now the protocols
Gary Kramlich <grim@reaperworld.com>
parents:
16303
diff
changeset
|
183 | jabber_actions, |
|
72faf41c3c4f
And now the protocols
Gary Kramlich <grim@reaperworld.com>
parents:
16303
diff
changeset
|
184 | |
|
72faf41c3c4f
And now the protocols
Gary Kramlich <grim@reaperworld.com>
parents:
16303
diff
changeset
|
185 | /* padding */ |
|
72faf41c3c4f
And now the protocols
Gary Kramlich <grim@reaperworld.com>
parents:
16303
diff
changeset
|
186 | NULL, |
|
72faf41c3c4f
And now the protocols
Gary Kramlich <grim@reaperworld.com>
parents:
16303
diff
changeset
|
187 | NULL, |
|
72faf41c3c4f
And now the protocols
Gary Kramlich <grim@reaperworld.com>
parents:
16303
diff
changeset
|
188 | NULL, |
|
72faf41c3c4f
And now the protocols
Gary Kramlich <grim@reaperworld.com>
parents:
16303
diff
changeset
|
189 | NULL |
| 16303 | 190 | }; |
| 191 | ||
| 192 | static void | |
| 193 | init_plugin(PurplePlugin *plugin) | |
| 194 | { | |
|
19992
3cdb4f27fb7c
Cleanup the SASL init and add error checking.
Daniel Atallah <datallah@pidgin.im>
parents:
19897
diff
changeset
|
195 | #ifdef HAVE_CYRUS_SASL |
|
3cdb4f27fb7c
Cleanup the SASL init and add error checking.
Daniel Atallah <datallah@pidgin.im>
parents:
19897
diff
changeset
|
196 | int ret; |
|
3cdb4f27fb7c
Cleanup the SASL init and add error checking.
Daniel Atallah <datallah@pidgin.im>
parents:
19897
diff
changeset
|
197 | #endif |
|
19894
b273d0db2bdd
Fixed code indenting, some spaces were still left and now replaced by tabs.
Andreas Monitzer <am@adiumx.com>
parents:
18996
diff
changeset
|
198 | PurpleAccountUserSplit *split; |
|
b273d0db2bdd
Fixed code indenting, some spaces were still left and now replaced by tabs.
Andreas Monitzer <am@adiumx.com>
parents:
18996
diff
changeset
|
199 | PurpleAccountOption *option; |
|
b273d0db2bdd
Fixed code indenting, some spaces were still left and now replaced by tabs.
Andreas Monitzer <am@adiumx.com>
parents:
18996
diff
changeset
|
200 | |
|
17008
502623177086
Handle people forgetting to enter a domain. Also, change 'server,' in the account options to 'domain,' which is its proper name, and hopefully less confusion
Sean Egan <seanegan@pidgin.im>
parents:
17007
diff
changeset
|
201 | /* Translators: 'domain' is used here in the context of Internet domains, e.g. pidgin.im */ |
|
19894
b273d0db2bdd
Fixed code indenting, some spaces were still left and now replaced by tabs.
Andreas Monitzer <am@adiumx.com>
parents:
18996
diff
changeset
|
202 | split = purple_account_user_split_new(_("Domain"), NULL, '@'); |
|
b273d0db2bdd
Fixed code indenting, some spaces were still left and now replaced by tabs.
Andreas Monitzer <am@adiumx.com>
parents:
18996
diff
changeset
|
203 | purple_account_user_split_set_reverse(split, FALSE); |
|
b273d0db2bdd
Fixed code indenting, some spaces were still left and now replaced by tabs.
Andreas Monitzer <am@adiumx.com>
parents:
18996
diff
changeset
|
204 | prpl_info.user_splits = g_list_append(prpl_info.user_splits, split); |
|
b273d0db2bdd
Fixed code indenting, some spaces were still left and now replaced by tabs.
Andreas Monitzer <am@adiumx.com>
parents:
18996
diff
changeset
|
205 | |
|
b273d0db2bdd
Fixed code indenting, some spaces were still left and now replaced by tabs.
Andreas Monitzer <am@adiumx.com>
parents:
18996
diff
changeset
|
206 | split = purple_account_user_split_new(_("Resource"), "Home", '/'); |
|
b273d0db2bdd
Fixed code indenting, some spaces were still left and now replaced by tabs.
Andreas Monitzer <am@adiumx.com>
parents:
18996
diff
changeset
|
207 | purple_account_user_split_set_reverse(split, FALSE); |
|
b273d0db2bdd
Fixed code indenting, some spaces were still left and now replaced by tabs.
Andreas Monitzer <am@adiumx.com>
parents:
18996
diff
changeset
|
208 | prpl_info.user_splits = g_list_append(prpl_info.user_splits, split); |
|
b273d0db2bdd
Fixed code indenting, some spaces were still left and now replaced by tabs.
Andreas Monitzer <am@adiumx.com>
parents:
18996
diff
changeset
|
209 | |
|
b273d0db2bdd
Fixed code indenting, some spaces were still left and now replaced by tabs.
Andreas Monitzer <am@adiumx.com>
parents:
18996
diff
changeset
|
210 | option = purple_account_option_bool_new(_("Require SSL/TLS"), "require_tls", FALSE); |
|
b273d0db2bdd
Fixed code indenting, some spaces were still left and now replaced by tabs.
Andreas Monitzer <am@adiumx.com>
parents:
18996
diff
changeset
|
211 | prpl_info.protocol_options = g_list_append(prpl_info.protocol_options, |
|
b273d0db2bdd
Fixed code indenting, some spaces were still left and now replaced by tabs.
Andreas Monitzer <am@adiumx.com>
parents:
18996
diff
changeset
|
212 | option); |
|
b273d0db2bdd
Fixed code indenting, some spaces were still left and now replaced by tabs.
Andreas Monitzer <am@adiumx.com>
parents:
18996
diff
changeset
|
213 | |
|
b273d0db2bdd
Fixed code indenting, some spaces were still left and now replaced by tabs.
Andreas Monitzer <am@adiumx.com>
parents:
18996
diff
changeset
|
214 | option = purple_account_option_bool_new(_("Force old (port 5223) SSL"), "old_ssl", FALSE); |
|
b273d0db2bdd
Fixed code indenting, some spaces were still left and now replaced by tabs.
Andreas Monitzer <am@adiumx.com>
parents:
18996
diff
changeset
|
215 | prpl_info.protocol_options = g_list_append(prpl_info.protocol_options, |
|
b273d0db2bdd
Fixed code indenting, some spaces were still left and now replaced by tabs.
Andreas Monitzer <am@adiumx.com>
parents:
18996
diff
changeset
|
216 | option); |
|
b273d0db2bdd
Fixed code indenting, some spaces were still left and now replaced by tabs.
Andreas Monitzer <am@adiumx.com>
parents:
18996
diff
changeset
|
217 | |
|
b273d0db2bdd
Fixed code indenting, some spaces were still left and now replaced by tabs.
Andreas Monitzer <am@adiumx.com>
parents:
18996
diff
changeset
|
218 | option = purple_account_option_bool_new( |
|
b273d0db2bdd
Fixed code indenting, some spaces were still left and now replaced by tabs.
Andreas Monitzer <am@adiumx.com>
parents:
18996
diff
changeset
|
219 | _("Allow plaintext auth over unencrypted streams"), |
|
b273d0db2bdd
Fixed code indenting, some spaces were still left and now replaced by tabs.
Andreas Monitzer <am@adiumx.com>
parents:
18996
diff
changeset
|
220 | "auth_plain_in_clear", FALSE); |
|
b273d0db2bdd
Fixed code indenting, some spaces were still left and now replaced by tabs.
Andreas Monitzer <am@adiumx.com>
parents:
18996
diff
changeset
|
221 | prpl_info.protocol_options = g_list_append(prpl_info.protocol_options, |
|
b273d0db2bdd
Fixed code indenting, some spaces were still left and now replaced by tabs.
Andreas Monitzer <am@adiumx.com>
parents:
18996
diff
changeset
|
222 | option); |
|
b273d0db2bdd
Fixed code indenting, some spaces were still left and now replaced by tabs.
Andreas Monitzer <am@adiumx.com>
parents:
18996
diff
changeset
|
223 | |
|
b273d0db2bdd
Fixed code indenting, some spaces were still left and now replaced by tabs.
Andreas Monitzer <am@adiumx.com>
parents:
18996
diff
changeset
|
224 | option = purple_account_option_int_new(_("Connect port"), "port", 5222); |
|
b273d0db2bdd
Fixed code indenting, some spaces were still left and now replaced by tabs.
Andreas Monitzer <am@adiumx.com>
parents:
18996
diff
changeset
|
225 | prpl_info.protocol_options = g_list_append(prpl_info.protocol_options, |
|
b273d0db2bdd
Fixed code indenting, some spaces were still left and now replaced by tabs.
Andreas Monitzer <am@adiumx.com>
parents:
18996
diff
changeset
|
226 | option); |
|
b273d0db2bdd
Fixed code indenting, some spaces were still left and now replaced by tabs.
Andreas Monitzer <am@adiumx.com>
parents:
18996
diff
changeset
|
227 | |
|
b273d0db2bdd
Fixed code indenting, some spaces were still left and now replaced by tabs.
Andreas Monitzer <am@adiumx.com>
parents:
18996
diff
changeset
|
228 | option = purple_account_option_string_new(_("Connect server"), |
|
b273d0db2bdd
Fixed code indenting, some spaces were still left and now replaced by tabs.
Andreas Monitzer <am@adiumx.com>
parents:
18996
diff
changeset
|
229 | "connect_server", NULL); |
|
b273d0db2bdd
Fixed code indenting, some spaces were still left and now replaced by tabs.
Andreas Monitzer <am@adiumx.com>
parents:
18996
diff
changeset
|
230 | prpl_info.protocol_options = g_list_append(prpl_info.protocol_options, |
|
b273d0db2bdd
Fixed code indenting, some spaces were still left and now replaced by tabs.
Andreas Monitzer <am@adiumx.com>
parents:
18996
diff
changeset
|
231 | option); |
|
b273d0db2bdd
Fixed code indenting, some spaces were still left and now replaced by tabs.
Andreas Monitzer <am@adiumx.com>
parents:
18996
diff
changeset
|
232 | |
|
b273d0db2bdd
Fixed code indenting, some spaces were still left and now replaced by tabs.
Andreas Monitzer <am@adiumx.com>
parents:
18996
diff
changeset
|
233 | |
|
b273d0db2bdd
Fixed code indenting, some spaces were still left and now replaced by tabs.
Andreas Monitzer <am@adiumx.com>
parents:
18996
diff
changeset
|
234 | jabber_init_plugin(plugin); |
|
b273d0db2bdd
Fixed code indenting, some spaces were still left and now replaced by tabs.
Andreas Monitzer <am@adiumx.com>
parents:
18996
diff
changeset
|
235 | |
|
b273d0db2bdd
Fixed code indenting, some spaces were still left and now replaced by tabs.
Andreas Monitzer <am@adiumx.com>
parents:
18996
diff
changeset
|
236 | purple_prefs_remove("/plugins/prpl/jabber"); |
|
b273d0db2bdd
Fixed code indenting, some spaces were still left and now replaced by tabs.
Andreas Monitzer <am@adiumx.com>
parents:
18996
diff
changeset
|
237 | |
|
b273d0db2bdd
Fixed code indenting, some spaces were still left and now replaced by tabs.
Andreas Monitzer <am@adiumx.com>
parents:
18996
diff
changeset
|
238 | /* XXX - If any other plugin wants SASL this won't be good ... */ |
|
b273d0db2bdd
Fixed code indenting, some spaces were still left and now replaced by tabs.
Andreas Monitzer <am@adiumx.com>
parents:
18996
diff
changeset
|
239 | #ifdef HAVE_CYRUS_SASL |
|
19992
3cdb4f27fb7c
Cleanup the SASL init and add error checking.
Daniel Atallah <datallah@pidgin.im>
parents:
19897
diff
changeset
|
240 | if ((ret = sasl_client_init(NULL)) != SASL_OK) { |
|
3cdb4f27fb7c
Cleanup the SASL init and add error checking.
Daniel Atallah <datallah@pidgin.im>
parents:
19897
diff
changeset
|
241 | purple_debug_error("xmpp", "Error (%d) initializing SASL.\n", ret); |
|
3cdb4f27fb7c
Cleanup the SASL init and add error checking.
Daniel Atallah <datallah@pidgin.im>
parents:
19897
diff
changeset
|
242 | } |
|
19894
b273d0db2bdd
Fixed code indenting, some spaces were still left and now replaced by tabs.
Andreas Monitzer <am@adiumx.com>
parents:
18996
diff
changeset
|
243 | #endif |
|
b273d0db2bdd
Fixed code indenting, some spaces were still left and now replaced by tabs.
Andreas Monitzer <am@adiumx.com>
parents:
18996
diff
changeset
|
244 | jabber_register_commands(); |
|
b273d0db2bdd
Fixed code indenting, some spaces were still left and now replaced by tabs.
Andreas Monitzer <am@adiumx.com>
parents:
18996
diff
changeset
|
245 | |
|
b273d0db2bdd
Fixed code indenting, some spaces were still left and now replaced by tabs.
Andreas Monitzer <am@adiumx.com>
parents:
18996
diff
changeset
|
246 | jabber_iq_init(); |
|
b273d0db2bdd
Fixed code indenting, some spaces were still left and now replaced by tabs.
Andreas Monitzer <am@adiumx.com>
parents:
18996
diff
changeset
|
247 | jabber_pep_init(); |
|
b273d0db2bdd
Fixed code indenting, some spaces were still left and now replaced by tabs.
Andreas Monitzer <am@adiumx.com>
parents:
18996
diff
changeset
|
248 | |
|
b273d0db2bdd
Fixed code indenting, some spaces were still left and now replaced by tabs.
Andreas Monitzer <am@adiumx.com>
parents:
18996
diff
changeset
|
249 | jabber_tune_init(); |
|
b273d0db2bdd
Fixed code indenting, some spaces were still left and now replaced by tabs.
Andreas Monitzer <am@adiumx.com>
parents:
18996
diff
changeset
|
250 | jabber_caps_init(); |
| 16303 | 251 | |
|
19894
b273d0db2bdd
Fixed code indenting, some spaces were still left and now replaced by tabs.
Andreas Monitzer <am@adiumx.com>
parents:
18996
diff
changeset
|
252 | jabber_add_feature("avatarmeta", AVATARNAMESPACEMETA, jabber_pep_namespace_only_when_pep_enabled_cb); |
|
b273d0db2bdd
Fixed code indenting, some spaces were still left and now replaced by tabs.
Andreas Monitzer <am@adiumx.com>
parents:
18996
diff
changeset
|
253 | jabber_add_feature("avatardata", AVATARNAMESPACEDATA, jabber_pep_namespace_only_when_pep_enabled_cb); |
|
b273d0db2bdd
Fixed code indenting, some spaces were still left and now replaced by tabs.
Andreas Monitzer <am@adiumx.com>
parents:
18996
diff
changeset
|
254 | jabber_add_feature("buzz", "http://www.xmpp.org/extensions/xep-0224.html#ns", jabber_buzz_isenabled); |
|
b273d0db2bdd
Fixed code indenting, some spaces were still left and now replaced by tabs.
Andreas Monitzer <am@adiumx.com>
parents:
18996
diff
changeset
|
255 | |
|
b273d0db2bdd
Fixed code indenting, some spaces were still left and now replaced by tabs.
Andreas Monitzer <am@adiumx.com>
parents:
18996
diff
changeset
|
256 | jabber_pep_register_handler("avatar", AVATARNAMESPACEMETA, jabber_buddy_avatar_update_metadata); |
| 16303 | 257 | } |
| 258 | ||
| 259 | ||
| 260 | PURPLE_INIT_PLUGIN(jabber, init_plugin, info); |