Remove all #if 0's from the prpls
--- a/libpurple/protocols/bonjour/jabber.c Fri Dec 29 03:57:44 2017 +0000
+++ b/libpurple/protocols/bonjour/jabber.c Thu Jan 04 22:39:03 2018 -0600
@@ -158,10 +158,6 @@
events_node = purple_xmlnode_get_child_with_namespace(message_node, "x", "jabber:x:event");
if (events_node != NULL) {
- if (purple_xmlnode_get_child(events_node, "composing") != NULL)
- composing_event = TRUE;
if (purple_xmlnode_get_child(events_node, "id") != NULL) {
/* The user is just typing */
/* TODO: Deal with typing notification */
@@ -393,17 +389,7 @@
bb = purple_buddy_get_protocol_data(bconv->pb);
- if(bconv->pb != NULL) {
- PurpleConversation *conv;
- conv = purple_conversations_find_im_with_account(bconv->pb->name, bconv->pb->account);
- char *tmp = g_strdup_printf(_("%s has closed the conversation."), bconv->pb->name);
- purple_conversation_write_system_message(conv, tmp, 0);
/* Close the socket, clear the watcher and free memory */
bonjour_jabber_close_conversation(bconv);
@@ -737,16 +723,6 @@
- /* TODO: Why isn't this being used? */
- data->socket = purple_network_listen(jdata->port, AF_UNSPEC, SOCK_STREAM, TRUE);
- if (jdata->socket == -1)
- purple_debug_error("bonjour", "No se ha podido crear el socket\n");
--- a/libpurple/protocols/gg/account.c Fri Dec 29 03:57:44 2017 +0000
+++ b/libpurple/protocols/gg/account.c Thu Jan 04 22:39:03 2018 -0600
@@ -149,10 +149,6 @@
ggp_account_token *token, gpointer _register_data);
static void ggp_account_register_dialog_ok(
ggp_account_register_data *register_data, PurpleRequestFields *fields);
-static void ggp_account_register_dialog_invalid(
- ggp_account_register_data *register_data, const gchar *message);
static void ggp_account_register_dialog_cancel(
ggp_account_register_data *register_data, PurpleRequestFields *fields);
static void ggp_account_register_response(struct gg_http *h, gboolean success,
@@ -295,20 +291,6 @@
ggp_account_register_response, register_data, TRUE);
-/* libgadu 1.12.x: use it for invalid token */
-static void ggp_account_register_dialog_invalid(
- ggp_account_register_data *register_data, const gchar *message)
- purple_debug_warning("gg", "ggp_account_register_dialog_invalid: %s\n",
- ggp_account_register_dialog(register_data->gc, register_data->token,
- purple_notify_error(purple_connection_get_account(register_data->gc),
- GGP_ACCOUNT_REGISTER_TITLE, message, NULL);
static void ggp_account_register_response(struct gg_http *h, gboolean success,
gboolean cancelled, gpointer _register_data)
--- a/libpurple/protocols/gg/validator.c Fri Dec 29 03:57:44 2017 +0000
+++ b/libpurple/protocols/gg/validator.c Thu Jan 04 22:39:03 2018 -0600
@@ -31,29 +31,6 @@
-gboolean ggp_validator_token(PurpleRequestField *field, gchar **errmsg,
- g_return_val_if_fail(field != NULL, FALSE);
- g_return_val_if_fail(purple_request_field_get_field_type(field) ==
- PURPLE_REQUEST_FIELD_STRING, FALSE);
- value = purple_request_field_string_get_value(field);
- if (value != NULL && ggp_account_token_validate(token, value))
- *errmsg = g_strdup(_("CAPTCHA validation failed"));
gboolean ggp_validator_password(PurpleRequestField *field, gchar **errmsg,
--- a/libpurple/protocols/gg/validator.h Fri Dec 29 03:57:44 2017 +0000
+++ b/libpurple/protocols/gg/validator.h Thu Jan 04 22:39:03 2018 -0600
@@ -33,12 +33,6 @@
-gboolean ggp_validator_token(PurpleRequestField *field, gchar **errmsg,
gboolean ggp_validator_password(PurpleRequestField *field, gchar **errmsg,
--- a/libpurple/protocols/irc/irc.c Fri Dec 29 03:57:44 2017 +0000
+++ b/libpurple/protocols/irc/irc.c Thu Jan 04 22:39:03 2018 -0600
@@ -687,11 +687,6 @@
purple_debug(PURPLE_DEBUG_ERROR, "irc", "chat send on nonexistent chat\n");
- return irc_parse_cmd(irc, convo->name, what + 1);
purple_markup_html_to_xhtml(purple_message_get_contents(msg), NULL, &tmp);
args[0] = purple_conversation_get_name(convo);
--- a/libpurple/protocols/jabber/auth_scram.c Fri Dec 29 03:57:44 2017 +0000
+++ b/libpurple/protocols/jabber/auth_scram.c Thu Jan 04 22:39:03 2018 -0600
@@ -46,35 +46,6 @@
g_return_val_if_reached(NULL);
-/* XXX: this code is not (yet) used */
- N_("Invalid Encoding")},
- { "extensions-not-supported",
- N_("Unsupported Extension") },
- { "channel-bindings-dont-match",
- N_("Unexpected response from the server. This may indicate a possible MITM attack") },
- { "server-does-support-channel-binding",
- N_("The server does support channel binding, but did not appear to advertise it. This indicates a likely MITM attack") },
- { "channel-binding-not-supported",
- N_("Server does not support channel binding") },
- { "unsupported-channel-binding-type",
- N_("Unsupported channel binding method") },
- N_("User not found") },
- { "invalid-username-encoding",
- N_("Invalid Username Encoding") },
- N_("Resource Constraint") },
guchar *jabber_scram_hi(const JabberScramHash *hash, const GString *str,
GString *salt, guint iterations)
--- a/libpurple/protocols/jabber/buddy.c Fri Dec 29 03:57:44 2017 +0000
+++ b/libpurple/protocols/jabber/buddy.c Thu Jan 04 22:39:03 2018 -0600
@@ -2135,24 +2135,6 @@
-/* This is for gettext only -- it will see this even though there's an #if 0. */
- * An incomplete list of server generated original language search
- * comments for Jabber User Directories
- * See discussion thread "Search comment for Jabber is not translatable"
- * in purple-i18n@lists.sourceforge.net (March 2006)
-static const char * jabber_user_dir_comments [] = {
- /* current comment from Jabber User Directory users.jabber.org */
- N_("Find a contact by entering the search criteria in the given fields. "
- "Note: Each field supports wild card searches (%)"),
static void user_search_fields_result_cb(JabberStream *js, const char *from,
JabberIqType type, const char *id,
PurpleXmlNode *packet, gpointer data)
--- a/libpurple/protocols/jabber/chat.c Fri Dec 29 03:57:44 2017 +0000
+++ b/libpurple/protocols/jabber/chat.c Thu Jan 04 22:39:03 2018 -0600
@@ -1214,9 +1214,6 @@
PurpleXmlNode *packet, gpointer data)
- PurpleXmlNode *query, *x;
int chat_id = GPOINTER_TO_INT(data);
if(!(chat = jabber_chat_find_by_id(js, chat_id)))
@@ -1225,27 +1222,6 @@
/* defaults, in case the conference server doesn't
* support this request */
- /* disabling this until more MUC servers support
- if (type == JABBER_IQ_ERROR) {
- if(!(query = purple_xmlnode_get_child(packet, "query")))
- for(x = purple_xmlnode_get_child(query, "feature"); x; x = purple_xmlnode_get_next_twin(x)) {
- const char *var = purple_xmlnode_get_attrib(x, "var");
- if(purple_strequal(var, NS_XHTML_IM)) {
void jabber_chat_disco_traffic(JabberChat *chat)
--- a/libpurple/protocols/jabber/gtalk.c Fri Dec 29 03:57:44 2017 +0000
+++ b/libpurple/protocols/jabber/gtalk.c Thu Jan 04 22:39:03 2018 -0600
@@ -62,9 +62,6 @@
ADD_VALUE(encryption_values, _("Require encryption"), "require_tls");
ADD_VALUE(encryption_values, _("Use encryption if available"), "opportunistic_tls");
ADD_VALUE(encryption_values, _("Use old-style SSL"), "old_ssl");
- ADD_VALUE(encryption_values, "None", "none");
encryption_values = g_list_reverse(encryption_values);
--- a/libpurple/protocols/jabber/jabber.c Fri Dec 29 03:57:44 2017 +0000
+++ b/libpurple/protocols/jabber/jabber.c Thu Jan 04 22:39:03 2018 -0600
@@ -220,50 +220,9 @@
jabber_process_starttls(JabberStream *js, PurpleXmlNode *packet)
- PurpleXmlNode *starttls;
- PurpleAccount *account;
- account = purple_connection_get_account(js->gc);
- * This code DOES NOT EXIST, will never be enabled by default, and
- * will never ever be supported (by me).
- * It's literally *only* for developer testing.
- const gchar *connection_security = purple_account_get_string(account, "connection_security", JABBER_DEFAULT_REQUIRE_TLS);
- if (!purple_strequal(connection_security, "none")) {
- "<starttls xmlns='urn:ietf:params:xml:ns:xmpp-tls'/>", -1);
"<starttls xmlns='urn:ietf:params:xml:ns:xmpp-tls'/>", -1);
- starttls = purple_xmlnode_get_child(packet, "starttls");
- if(purple_xmlnode_get_child(starttls, "required")) {
- purple_connection_error(js->gc,
- PURPLE_CONNECTION_ERROR_NO_SSL_SUPPORT,
- _("Server requires TLS/SSL, but no TLS/SSL support was found."));
- if (purple_strequal("require_tls", purple_account_get_string(account, "connection_security", JABBER_DEFAULT_REQUIRE_TLS))) {
- purple_connection_error(js->gc,
- PURPLE_CONNECTION_ERROR_NO_SSL_SUPPORT,
- _("You require encryption, but no TLS/SSL support was found."));
void jabber_stream_features_parse(JabberStream *js, PurpleXmlNode *packet)
@@ -2688,9 +2647,7 @@
PurpleXmlNode *t = purple_xmlnode_get_child_with_namespace(error, "text", NS_XMPP_STANZAS);
cdata = purple_xmlnode_get_data(t);
- cdata = purple_xmlnode_get_data(error);
code = purple_xmlnode_get_attrib(error, "code");
@@ -3762,56 +3719,6 @@
g_hash_table_remove(jabber_cmds, protocol);
- * IPC function for determining if a contact supports a certain feature.
- * @param account The PurpleAccount
- * @param jid The full JID of the contact.
- * @param feature The feature's namespace.
- * @return TRUE if supports feature; else FALSE.
-jabber_ipc_contact_has_feature(PurpleAccount *account, const gchar *jid,
- PurpleConnection *gc = purple_account_get_connection(account);
- JabberBuddyResource *jbr;
- if (!purple_account_is_connected(account))
- js = purple_connection_get_protocol_data(gc);
- if (!(resource = jabber_get_resource(jid)) ||
- !(jb = jabber_buddy_find(js, jid, FALSE)) ||
- !(jbr = jabber_buddy_find_resource(jb, resource))) {
- return jabber_resource_has_capability(jbr, feature);
-jabber_ipc_add_feature(const gchar *feature)
- jabber_add_feature(feature, 0);
- /* send presence with new caps info for all connected accounts */
- jabber_caps_broadcast_change();
static PurpleAccount *find_acct(const char *protocol, const char *acct_id)
PurpleAccount *acct = NULL;
@@ -4032,32 +3939,6 @@
jabber_register_commands(protocol);
- purple_plugin_ipc_register(plugin, "contact_has_feature", PURPLE_CALLBACK(jabber_ipc_contact_has_feature),
- purple_marshal_BOOLEAN__POINTER_POINTER_POINTER,
- PURPLE_TYPE_ACCOUNT, G_TYPE_STRING, G_TYPE_STRING);
- purple_plugin_ipc_register(plugin, "add_feature", PURPLE_CALLBACK(jabber_ipc_add_feature),
- purple_marshal_VOID__POINTER,
- G_TYPE_NONE, 1, G_TYPE_STRING);
- purple_plugin_ipc_register(plugin, "register_namespace_watcher",
- PURPLE_CALLBACK(jabber_iq_signal_register),
- purple_marshal_VOID__POINTER_POINTER,
- G_TYPE_STRING, /* node */
- G_TYPE_STRING); /* namespace */
- purple_plugin_ipc_register(plugin, "unregister_namespace_watcher",
- PURPLE_CALLBACK(jabber_iq_signal_unregister),
- purple_marshal_VOID__POINTER_POINTER,
- G_TYPE_STRING, /* node */
- G_TYPE_STRING); /* namespace */
purple_signal_register(protocol, "jabber-register-namespace-watcher",
purple_marshal_VOID__POINTER_POINTER,
@@ -4141,9 +4022,6 @@
g_return_if_fail(plugin_ref > 0);
purple_signals_unregister_by_instance(protocol);
- purple_plugin_ipc_unregister_all(plugin);
jabber_unregister_commands(protocol);
--- a/libpurple/protocols/jabber/jingle/jingle.c Fri Dec 29 03:57:44 2017 +0000
+++ b/libpurple/protocols/jabber/jingle/jingle.c Thu Jan 04 22:39:03 2018 -0600
@@ -51,24 +51,12 @@
return JINGLE_TYPE_RAWUDP;
else if (purple_strequal(type, JINGLE_TRANSPORT_ICEUDP))
return JINGLE_TYPE_ICEUDP;
- else if (purple_strequal(type, JINGLE_TRANSPORT_SOCKS))
- return JINGLE_TYPE_SOCKS;
- else if (purple_strequal(type, JINGLE_TRANSPORT_IBB))
- return JINGLE_TYPE_IBB;
else if (purple_strequal(type, JINGLE_APP_RTP))
else if (!strcmp(type, NS_GOOGLE_TRANSPORT_P2P))
return JINGLE_TYPE_GOOGLE_P2P;
- else if (purple_strequal(type, JINGLE_APP_FT))
- else if (purple_strequal(type, JINGLE_APP_XML))
- return JINGLE_TYPE_XML;
--- a/libpurple/protocols/jabber/jingle/rtp.c Fri Dec 29 03:57:44 2017 +0000
+++ b/libpurple/protocols/jabber/jingle/rtp.c Thu Jan 04 22:39:03 2018 -0600
@@ -59,13 +59,6 @@
static PurpleMedia *jingle_rtp_get_media(JingleSession *session);
-static guint jingle_rtp_signals[LAST_SIGNAL] = {0};
--- a/libpurple/protocols/jabber/jutil.c Fri Dec 29 03:57:44 2017 +0000
+++ b/libpurple/protocols/jabber/jutil.c Thu Jan 04 22:39:03 2018 -0600
@@ -322,9 +322,6 @@
const char *slash = NULL;
gboolean needs_validation = FALSE;
- gboolean node_is_required = FALSE;
@@ -378,28 +375,6 @@
- /* characters allowed only in the resource */
- /* characters allowed only in the node */
- * Ok, this character is valid, but only if it's a part
- * of the node and not the domain. But we don't know
- * if "c" is a part of the node or the domain until after
- * we've found the @. So set a flag for now and check
- * that we found an @ later.
- node_is_required = TRUE;
* Hmm, this character is a bit more exotic. Better fall
* back to using the more expensive UTF-8 compliant
@@ -410,12 +385,6 @@
- if (node_is_required && at == NULL)
- /* Found invalid characters in the domain */
/* JID is made of only ASCII characters--just lowercase and return */
jid = g_new0(JabberID, 1);
--- a/libpurple/protocols/jabber/parser.c Fri Dec 29 03:57:44 2017 +0000
+++ b/libpurple/protocols/jabber/parser.c Thu Jan 04 22:39:03 2018 -0600
@@ -94,14 +94,6 @@
if (js->stream_id == NULL) {
- /* This was underspecified in rfc3920 as only being a SHOULD, so
- * we cannot rely on it. See #12331 and Oracle's server.
- purple_connection_error(js->gc,
- PURPLE_CONNECTION_ERROR_AUTHENTICATION_IMPOSSIBLE,
- _("XMPP stream missing ID"));
/* Instead, let's make up a placeholder stream ID, which we need
* to do because we flag on it being NULL as a special case
@@ -110,7 +102,6 @@
purple_debug_info("jabber", "Server failed to specify a stream "
"ID (underspecified in rfc3920, but intended "
"to be a MUST; digest legacy auth may fail.\n");
--- a/libpurple/protocols/jabber/presence.c Fri Dec 29 03:57:44 2017 +0000
+++ b/libpurple/protocols/jabber/presence.c Thu Jan 04 22:39:03 2018 -0600
@@ -525,18 +525,6 @@
jbr->commands_fetched = TRUE;
- * Versions of libpurple before 2.6.0 didn't advertise this capability, so
- * we can't yet use Entity Capabilities to determine whether or not the
- * other client supports Chat States.
- if (jabber_resource_has_capability(jbr, "http://jabber.org/protocol/chatstates"))
- jbr->chat_states = JABBER_CHAT_STATES_SUPPORTED;
- jbr->chat_states = JABBER_CHAT_STATES_UNSUPPORTED;
--- a/libpurple/protocols/jabber/roster.c Fri Dec 29 03:57:44 2017 +0000
+++ b/libpurple/protocols/jabber/roster.c Thu Jan 04 22:39:03 2018 -0600
@@ -203,9 +203,6 @@
JabberIqType type, const char *id, PurpleXmlNode *query)
PurpleXmlNode *item, *group;
if (!jabber_is_own_account(js, from)) {
purple_debug_warning("jabber", "Received bogon roster push from %s\n",
@@ -285,14 +282,6 @@
- ver = purple_xmlnode_get_attrib(query, "ver");
- PurpleAccount *account = purple_connection_get_account(js->gc);
- purple_account_set_string(account, "roster_ver", ver);
if (type == JABBER_IQ_SET) {
JabberIq *ack = jabber_iq_new(js, JABBER_IQ_RESULT);
jabber_iq_set_id(ack, id);
--- a/libpurple/protocols/jabber/tests/test_jabber_scram.c Fri Dec 29 03:57:44 2017 +0000
+++ b/libpurple/protocols/jabber/tests/test_jabber_scram.c Thu Jan 04 22:39:03 2018 -0600
@@ -22,11 +22,7 @@
assert_pbkdf2_equal("password", "salt", 1, "\x0c\x60\xc8\x0f\x96\x1f\x0e\x71\xf3\xa9\xb5\x24\xaf\x60\x12\x06\x2f\xe0\x37\xa6");
assert_pbkdf2_equal("password", "salt", 2, "\xea\x6c\x01\x4d\xc7\x2d\x6f\x8c\xcd\x1e\xd9\x2a\xce\x1d\x41\xf0\xd8\xde\x89\x57");
assert_pbkdf2_equal("password", "salt", 4096, "\x4b\x00\x79\x01\xb7\x65\x48\x9a\xbe\xad\x49\xd9\x26\xf7\x21\xd0\x65\xa4\x29\xc1");
- /* This causes libcheck to time out :-D */
assert_pbkdf2_equal("password", "salt", 16777216, "\xee\xfe\x3d\x61\xcd\x4d\xa4\xe4\xe9\x94\x5b\x3d\x6b\xa2\x15\x8c\x26\x34\xe9\x84");
--- a/libpurple/protocols/jabber/useravatar.c Fri Dec 29 03:57:44 2017 +0000
+++ b/libpurple/protocols/jabber/useravatar.c Thu Jan 04 22:39:03 2018 -0600
@@ -46,27 +46,6 @@
remove_avatar_0_12_nodes(JabberStream *js)
- /* See note below for why this is #if 0'd */
- /* Publish an empty avatar according to the XEP-0084 v0.12 semantics */
- PurpleXmlNode *publish, *item, *metadata;
- /* publish the metadata */
- publish = purple_xmlnode_new("publish");
- purple_xmlnode_set_attrib(publish, "node", NS_AVATAR_0_12_METADATA);
- item = purple_xmlnode_new_child(publish, "item");
- purple_xmlnode_set_attrib(item, "id", "stop");
- metadata = purple_xmlnode_new_child(item, "metadata");
- purple_xmlnode_set_namespace(metadata, NS_AVATAR_0_12_METADATA);
- purple_xmlnode_new_child(metadata, "stop");
- jabber_pep_publish(js, publish);
* This causes ejabberd 2.0.0 to kill the connection unceremoniously.
* See https://support.process-one.net/browse/EJAB-623. When adiumx.com
--- a/libpurple/protocols/jabber/xmpp.c Fri Dec 29 03:57:44 2017 +0000
+++ b/libpurple/protocols/jabber/xmpp.c Thu Jan 04 22:39:03 2018 -0600
@@ -53,9 +53,6 @@
ADD_VALUE(encryption_values, _("Require encryption"), "require_tls");
ADD_VALUE(encryption_values, _("Use encryption if available"), "opportunistic_tls");
ADD_VALUE(encryption_values, _("Use old-style SSL"), "old_ssl");
- ADD_VALUE(encryption_values, "None", "none");
encryption_values = g_list_reverse(encryption_values);
--- a/libpurple/protocols/novell/novell.c Fri Dec 29 03:57:44 2017 +0000
+++ b/libpurple/protocols/novell/novell.c Thu Jan 04 22:39:03 2018 -0600
@@ -1533,20 +1533,6 @@
purple_notify_user_info_add_pair_html(user_info, tag, value);
- /* Hint for translators: "DN" here refers to a piece of information about
- a user on the Novell protocol. "DN" is not an English word. I think
- it's an abbreviation, possibly for "distinguished name" as defined in
- the X.500 standard. It's probably fine to leave it untranslated. */
- value = nm_user_record_get_dn(user_record);
- /* TODO: Check whether it's correct to call add_pair_html,
- or if we should be using add_pair_plaintext */
- purple_notify_user_info_add_pair_html(user_info, tag, value);
value = nm_user_record_get_full_name(user_record);
--- a/libpurple/protocols/sametime/sametime.c Fri Dec 29 03:57:44 2017 +0000
+++ b/libpurple/protocols/sametime/sametime.c Thu Jan 04 22:39:03 2018 -0600
@@ -426,11 +426,6 @@
@@ -1353,18 +1348,6 @@
/* better make sure we're connected */
if(! purple_account_is_connected(acct)) return;
- /* if there's anyone in the group for this acct, offer to invite
- them all to a conference */
- group = (PurpleGroup *) node;
- if(purple_group_on_account(group, acct)) {
- act = purple_menu_action_new(_("Invite Group to Conference..."),
- PURPLE_CALLBACK(blist_menu_group_invite),
- *menu = g_list_append(*menu, NULL);
/* check if it's a NAB group for this account */
owner = purple_blist_node_get_string(node, GROUP_KEY_OWNER);
if(owner && purple_strequal(owner, purple_account_get_username(acct))) {
@@ -2626,13 +2609,6 @@
- /* don't do this, to prevent the occasional weird sending of
- formatted messages as plaintext when the other end closes the
- conversation after we've begun composing the message */
- convo_nofeatures(conv);
mwConversation_removeClientData(conv);
@@ -3559,42 +3535,6 @@
-static void blist_menu_announce(PurpleBlistNode *node, gpointer data) {
- PurpleBuddy *buddy = (PurpleBuddy *) node;
- struct mwPurpleProtocolData *pd;
- struct mwSession *session;
- g_return_if_fail(node != NULL);
- g_return_if_fail(PURPLE_IS_BUDDY(node));
- g_return_if_fail(acct != NULL);
- gc = purple_account_get_connection(acct);
- g_return_if_fail(gc != NULL);
- pd = purple_connection_get_protocol_data(gc);
- g_return_if_fail(pd != NULL);
- rcpt_name = g_strdup_printf("@U %s", buddy->name);
- rcpt = g_list_prepend(NULL, rcpt_name);
- mwSession_sendAnnounce(session, FALSE,
- "This is a TEST announcement. Please ignore.",
static GList *mw_protocol_blist_node_menu(PurpleBlistNode *node) {
@@ -3608,12 +3548,6 @@
PURPLE_CALLBACK(blist_menu_conf), NULL, NULL);
l = g_list_append(l, act);
- act = purple_menu_action_new(_("Send TEST Announcement"),
- PURPLE_CALLBACK(blist_menu_announce), NULL, NULL);
- l = g_list_append(l, act);
/** note: this never gets called for a PurpleGroup, have to use the
blist-node-extended-menu signal for that. The function
blist_node_menu_cb is assigned to this signal in the function
@@ -4390,40 +4324,6 @@
- /* fall-through indicates that we couldn't find a matching user in
- the resolve service (ether error or zero results), so we remove
- /* note: I can't really think of a good reason to alter the buddy
- list in any way. There has been at least one report where the
- resolve service isn't returning correct results anyway, so let's
- just leave them in the list. I'm just going to if0 this section
- out unless I can think of a very good reason to do this. -siege */
- DEBUG_INFO("no such buddy in community\n");
- purple_blist_remove_buddy(buddy);
- /* compose and display an error message */
- msgA = _("Unable to add user: user not found");
- msgB = _("The identifier '%s' did not match any users in your"
- " Sametime community. This entry has been removed from"
- msg = g_strdup_printf(msgB, NSTR(res->name));
- purple_notify_error(gc, _("Unable to add user"), msgA, msg);
@@ -5063,36 +4963,6 @@
-static PurplePluginPrefFrame *
-mw_plugin_get_plugin_pref_frame(PurplePlugin *plugin) {
- PurplePluginPrefFrame *frame;
- PurplePluginPref *pref;
- frame = purple_plugin_pref_frame_new();
- pref = purple_plugin_pref_new_with_label(_("Remotely Stored Buddy List"));
- purple_plugin_pref_frame_add(frame, pref);
- pref = purple_plugin_pref_new_with_name(MW_PROTOCOL_OPT_BLIST_ACTION);
- purple_plugin_pref_set_label(pref, _("Buddy List Storage Mode"));
- purple_plugin_pref_set_pref_type(pref, PURPLE_PLUGIN_PREF_CHOICE);
- purple_plugin_pref_add_choice(pref, _("Local Buddy List Only"),
- GINT_TO_POINTER(blist_choice_LOCAL));
- purple_plugin_pref_add_choice(pref, _("Merge List from Server"),
- GINT_TO_POINTER(blist_choice_MERGE));
- purple_plugin_pref_add_choice(pref, _("Merge and Save List to Server"),
- GINT_TO_POINTER(blist_choice_STORE));
- purple_plugin_pref_add_choice(pref, _("Synchronize List with Server"),
- GINT_TO_POINTER(blist_choice_SYNCH));
- purple_plugin_pref_frame_add(frame, pref);
static void st_import_action_cb(PurpleConnection *gc, char *filename) {
struct mwSametimeList *l;
--- a/libpurple/protocols/silc/chat.c Fri Dec 29 03:57:44 2017 +0000
+++ b/libpurple/protocols/silc/chat.c Thu Jan 04 22:39:03 2018 -0600
@@ -192,27 +192,6 @@
-#if 0 /* XXX For now these are not implemented. We need better
- listview dialog from Purple for these. */
-/************************** Channel Invite List ******************************/
-silcpurple_chat_invitelist(PurpleBlistNode *node, gpointer data);
-/**************************** Channel Ban List *******************************/
-silcpurple_chat_banlist(PurpleBlistNode *node, gpointer data);
/************************* Channel Authentication ****************************/
@@ -915,21 +894,6 @@
m = g_list_append(m, act);
-#if 0 /* XXX For now these are not implemented. We need better
- listview dialog from Purple for these. */
- if (mode & SILC_CHANNEL_UMODE_CHANOP) {
- act = purple_menu_action_new(_("Invite List"),
- PURPLE_CALLBACK(silcpurple_chat_invitelist),
- m = g_list_append(m, act);
- act = purple_menu_action_new(_("Ban List"),
- PURPLE_CALLBACK(silcpurple_chat_banlist),
- m = g_list_append(m, act);
act = purple_menu_action_new(_("Add Private Group"),
PURPLE_CALLBACK(silcpurple_chat_prv),
--- a/libpurple/protocols/silc/ops.c Fri Dec 29 03:57:44 2017 +0000
+++ b/libpurple/protocols/silc/ops.c Thu Jan 04 22:39:03 2018 -0600
@@ -967,107 +967,6 @@
-silcpurple_whois_more(SilcClientEntry client_entry, gint id)
- SilcAttributePayload attr;
- SilcAttribute attribute;
- memset(&vcard, 0, sizeof(vcard));
- silc_dlist_start(client_entry->attrs);
- while ((attr = silc_dlist_get(client_entry->attrs)) != SILC_LIST_END) {
- attribute = silc_attribute_get_attribute(attr);
- case SILC_ATTRIBUTE_USER_INFO:
- if (!silc_attribute_get_object(attr, (void *)&vcard,
- g_string_append_printf(s, "%s:\n\n", _("Personal Information"));
- g_string_append_printf(s, "%s:\t\t%s\n",
- g_string_append_printf(s, "%s:\t%s\n",
- if (vcard.middle_names)
- g_string_append_printf(s, "%s:\t%s\n",
- g_string_append_printf(s, "%s:\t%s\n",
- g_string_append_printf(s, "%s:\t\t%s\n",
- g_string_append_printf(s, "%s:\t\t%s\n",
- g_string_append_printf(s, "%s:\t\t%s\n",
- g_string_append_printf(s, "%s:\t\t%s\n",
- g_string_append_printf(s, "%s:\t%s\n",
- g_string_append_printf(s, "%s:\t\t%s\n",
- g_string_append_printf(s, "%s:\t%s\n",
- g_string_append_printf(s, "%s:\t%s\n",
- for (i = 0; i < vcard.num_tels; i++) {
- if (vcard.tels[i].telnum)
- g_string_append_printf(s, "%s:\t\t\t%s\n",
- for (i = 0; i < vcard.num_emails; i++) {
- if (vcard.emails[i].address)
- g_string_append_printf(s, "%s:\t\t%s\n",
- vcard.emails[i].address);
- g_string_append_printf(s, "\n%s:\t\t%s\n",
- purple_notify_info(NULL, _("User Information"), _("User Information"),
- g_string_free(s, TRUE);
/* Command reply handler. Delivers a reply to command that was sent
earlier. The `conn' is the associated client connection. The `command'
@@ -1306,15 +1205,6 @@
-#if 0 /* XXX for now, let's not show attrs here */
- if (client_entry->attrs)
- purple_request_action(gc, _("User Information"),
- buf, 1, client_entry, 2,
- _("OK"), G_CALLBACK(silcpurple_whois_more),
- _("_More..."), G_CALLBACK(silcpurple_whois_more), gc->account, NULL, NULL);
purple_notify_userinfo(gc, client_entry->nickname, user_info, NULL, NULL);
purple_notify_user_info_destroy(user_info);
--- a/libpurple/protocols/silc/silc.c Fri Dec 29 03:57:44 2017 +0000
+++ b/libpurple/protocols/silc/silc.c Thu Jan 04 22:39:03 2018 -0600
@@ -1038,14 +1038,6 @@
purple_request_fields_add_group(fields, g);
g = purple_request_field_group_new(NULL);
- f = purple_request_field_label_new("l2", _("Online Services"));
- purple_request_field_group_add_field(g, f);
- f = purple_request_field_bool_new("services",
- _("Let others see what services you are using"),
- purple_request_field_group_add_field(g, f);
#ifdef HAVE_SYS_UTSNAME_H
f = purple_request_field_bool_new("device",
_("Let others see what computer you are using"),
@@ -2091,20 +2083,6 @@
"prpl-silc", silcpurple_cmd_generic,
_("ping: Send PING to the connected server"), NULL);
cmds = g_slist_prepend(cmds, GUINT_TO_POINTER(id));
-#if 0 /* Purple doesn't handle these yet */
- id = purple_cmd_register("users", "w", PURPLE_CMD_P_PROTOCOL,
- PURPLE_CMD_FLAG_CHAT | PURPLE_CMD_FLAG_PROTOCOL_ONLY,
- "prpl-silc", silcpurple_cmd_users,
- _("users <channel>: List users in channel"));
- cmds = g_slist_prepend(cmds, GUINT_TO_POINTER(id));
- id = purple_cmd_register("names", "ww", PURPLE_CMD_P_PROTOCOL,
- PURPLE_CMD_FLAG_CHAT | PURPLE_CMD_FLAG_PROTOCOL_ONLY |
- PURPLE_CMD_FLAG_ALLOW_WRONG_ARGS, "prpl-silc", silcpurple_cmd_names,
- _("names [-count|-ops|-halfops|-voices|-normal] <channel(s)>: List specific users in channel(s)"));
- cmds = g_slist_prepend(cmds, GUINT_TO_POINTER(id));
@@ -2135,14 +2113,6 @@
-static SilcBool silcpurple_debug_cb(char *file, char *function, int line,
- char *message, void *context)
- purple_debug_info("SILC", "%s:%d:%s - %s\n", file ? file : "(null)", line, function ? function : "(null)", message ? message : "(null)");
silcpurple_protocol_init(PurpleProtocol *protocol)
@@ -2349,13 +2319,6 @@
silc_log_set_callback(SILC_LOG_ERROR, silcpurple_log_error, NULL);
silcpurple_register_commands();
-silc_log_set_debug_string("*client*");
-silc_log_set_debug_callbacks(silcpurple_debug_cb, NULL, NULL, NULL);
--- a/libpurple/protocols/simple/ntlm.c Fri Dec 29 03:57:44 2017 +0000
+++ b/libpurple/protocols/simple/ntlm.c Thu Jan 04 22:39:03 2018 -0600
@@ -80,14 +80,6 @@
guint32 flags; /* 0x00008201 */
/* guint32 flags2; */ /* unknown, used in windows messenger */
- guint8 dom[*]; /* domain string (unicode UTF-16LE) */
- guint8 user[*]; /* username string (unicode UTF-16LE) */
- guint8 host[*]; /* host string (unicode UTF-16LE) */
- guint8 lm_resp[*]; /* LanManager response */
- guint8 nt_resp[*]; /* NT response */
--- a/libpurple/protocols/zephyr/ZFmtSmRLst.c Fri Dec 29 03:57:44 2017 +0000
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,48 +0,0 @@
-/* This file is part of the Project Athena Zephyr Notification System.
- * It contains source for the ZFormatSmallRawNoticeList function.
- * Created by: John T. Kohl
- * Copyright (c) 1988 by the Massachusetts Institute of Technology.
- * For copying and distribution information, see the file
-Code_t ZFormatSmallRawNoticeList(notice, list, nitems, buffer, ret_len)
- if ((retval = Z_FormatRawHeader(notice, buffer, Z_MAXHEADERLEN,
- &hdrlen, NULL, NULL)) != ZERR_NONE)
- size += strlen(list[i])+1;
- *ret_len = hdrlen+size;
- if (*ret_len > Z_MAXPKTLEN)
- for (;nitems;nitems--, list++) {
- (void) memcpy(ptr, *list, i);
--- a/libpurple/protocols/zephyr/ZMkAuth.c Fri Dec 29 03:57:44 2017 +0000
+++ b/libpurple/protocols/zephyr/ZMkAuth.c Thu Jan 04 22:39:03 2018 -0600
@@ -24,15 +24,6 @@
static KTEXT_ST last_authent;
-Code_t ZResetAuthentication () {
-#ifdef ZEPHYR_USES_KERBEROS
- last_authent_time = 0L;
Code_t ZMakeAuthentication(notice, buffer, buffer_len, len)
register ZNotice_t *notice;
--- a/libpurple/protocols/zephyr/ZPeekIfNot.c Fri Dec 29 03:57:44 2017 +0000
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,53 +0,0 @@
-/* This file is part of the Project Athena Zephyr Notification System.
- * It contains source for the ZPeekIfNotice function.
- * Created by: Robert French
- * Copyright (c) 1987,1988 by the Massachusetts Institute of Technology.
- * For copying and distribution information, see the file
-Code_t ZPeekIfNotice(notice, from, predicate, args)
- struct sockaddr_in *from;
- struct _Z_InputQ *qptr;
- if ((retval = Z_WaitForComplete()) != ZERR_NONE)
- qptr = Z_GetFirstComplete();
- if ((retval = ZParseNotice(qptr->packet, qptr->packet_len,
- &tmpnotice)) != ZERR_NONE)
- if ((*predicate)(&tmpnotice, args)) {
- if (!(buffer = (char *) malloc((unsigned) qptr->packet_len)))
- (void) memcpy(buffer, qptr->packet, qptr->packet_len);
- if ((retval = ZParseNotice(buffer, qptr->packet_len,
- notice)) != ZERR_NONE) {
- qptr = Z_GetNextComplete(qptr);
- if ((retval = Z_ReadWait()) != ZERR_NONE)
--- a/libpurple/protocols/zephyr/ZRetSubs.c Fri Dec 29 03:57:44 2017 +0000
+++ b/libpurple/protocols/zephyr/ZRetSubs.c Thu Jan 04 22:39:03 2018 -0600
@@ -42,22 +42,6 @@
return(Z_RetSubs(¬ice, nsubs, ZAUTH));
-Code_t ZRetrieveDefaultSubscriptions(nsubs)
- (void) memset((char *)¬ice, 0, sizeof(notice));
- notice.z_message = (char *) 0;
- notice.z_message_len = 0;
- notice.z_opcode = CLIENT_GIMMEDEFS;
- return(Z_RetSubs(¬ice, nsubs, ZNOAUTH));
static Code_t Z_RetSubs(notice, nsubs, auth_routine)
register ZNotice_t *notice;
--- a/libpurple/protocols/zephyr/ZSendRLst.c Fri Dec 29 03:57:44 2017 +0000
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,46 +0,0 @@
-/* This file is part of the Project Athena Zephyr Notification System.
- * It contains source for the ZSendRawList function.
- * Created by: John T. Kohl
- * Copyright (c) 1988 by the Massachusetts Institute of Technology.
- * For copying and distribution information, see the file
-Code_t ZSendRawList(notice, list, nitems)
- return(ZSrvSendRawList(notice, list, nitems, Z_XmitFragment));
-Code_t ZSrvSendRawList(notice, list, nitems, send_routine)
- Code_t (*send_routine)();
- if ((retval = ZFormatRawNoticeList(notice, list, nitems, &buffer,
- if ((retval = ZParseNotice(buffer, len, &newnotice)) != ZERR_NONE)
- retval = Z_SendFragmentedNotice(&newnotice, len, NULL, send_routine);
--- a/libpurple/protocols/zephyr/ZSendRaw.c Fri Dec 29 03:57:44 2017 +0000
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,35 +0,0 @@
-/* This file is part of the Project Athena Zephyr Notification System.
- * It contains source for the ZSendRawNotice function.
- * Created by: Robert French
- * Copyright (c) 1987 by the Massachusetts Institute of Technology.
- * For copying and distribution information, see the file
-Code_t ZSendRawNotice(notice)
- if ((retval = ZFormatRawNotice(notice, &buffer, &len)) !=
- if ((retval = ZParseNotice(buffer, len, &newnotice)) != ZERR_NONE)
- retval = Z_SendFragmentedNotice(&newnotice, len, NULL, Z_XmitFragment);
--- a/libpurple/protocols/zephyr/meson.build Fri Dec 29 03:57:44 2017 +0000
+++ b/libpurple/protocols/zephyr/meson.build Thu Jan 04 22:39:03 2018 -0600
@@ -12,7 +12,6 @@
@@ -27,7 +26,6 @@
@@ -38,8 +36,6 @@