/pidgin/main: e666f49a3e86: Remove all Yahoo federation, none of...
Michael McConville <[email protected]>
| Newsgroups | gmane.comp.gnome.gaim.cvs |
|---|---|
| Message-ID | <[email protected]> |
Changeset: e666f49a3e86a049fc5f6cbf2d37ce87acd7d0cb Author: Michael McConville <[email protected]> Date: 2015-07-21 22:38 -0400 Branch: default URL: https://hg.pidgin.im/pidgin/main/rev/e666f49a3e86 Description: Remove all Yahoo federation, none of which is supported anymore. Ok'd by John Bailey (rekkanoryo). Refs #15907 diffstat: libpurple/protocols/yahoo/util.c | 17 - libpurple/protocols/yahoo/yahoo_aliases.c | 1 - libpurple/protocols/yahoo/yahoo_filexfer.c | 2 +- libpurple/protocols/yahoo/yahoo_filexfer.h | 2 - libpurple/protocols/yahoo/yahoo_friend.c | 68 +--- libpurple/protocols/yahoo/yahoo_friend.h | 1 - libpurple/protocols/yahoo/ymsg.c | 465 ++++------------------------ libpurple/protocols/yahoo/ymsg.h | 17 - 8 files changed, 82 insertions(+), 491 deletions(-) diffs (truncated from 1143 to 300 lines): diff --git a/libpurple/protocols/yahoo/util.c b/libpurple/protocols/yahoo/util.c --- a/libpurple/protocols/yahoo/util.c +++ b/libpurple/protocols/yahoo/util.c @@ -951,20 +951,3 @@ char *yahoo_html_to_codes(const char *sr return g_string_free(dest, FALSE); } - -YahooFederation yahoo_get_federation_from_name(const char *who) -{ - YahooFederation fed = YAHOO_FEDERATION_NONE; - if (who[3] == '/') { - if (!g_ascii_strncasecmp(who, "msn", 3)) - fed = YAHOO_FEDERATION_MSN; - else if (!g_ascii_strncasecmp(who, "ocs", 3)) - fed = YAHOO_FEDERATION_OCS; - else if (!g_ascii_strncasecmp(who, "ibm", 3)) - fed = YAHOO_FEDERATION_IBM; - else if (!g_ascii_strncasecmp(who, "pbx", 3)) - fed = YAHOO_FEDERATION_PBX; - } - return fed; -} - diff --git a/libpurple/protocols/yahoo/yahoo_aliases.c b/libpurple/protocols/yahoo/yahoo_aliases.c --- a/libpurple/protocols/yahoo/yahoo_aliases.c +++ b/libpurple/protocols/yahoo/yahoo_aliases.c @@ -632,7 +632,6 @@ parse_contact_details(YahooData *yd, con return TRUE; } -/* I don't think this happens for MSN buddies. -- sad */ void yahoo_process_contact_details(PurpleConnection *gc, struct yahoo_packet *pkt) { GSList *l = pkt->hash; diff --git a/libpurple/protocols/yahoo/yahoo_filexfer.c b/libpurple/protocols/yahoo/yahoo_filexfer.c --- a/libpurple/protocols/yahoo/yahoo_filexfer.c +++ b/libpurple/protocols/yahoo/yahoo_filexfer.c @@ -578,7 +578,7 @@ static void yahoo_xfer_dns_connected_15( gboolean yahoo_can_receive_file(PurpleConnection *gc, const char *who) { - if (!who || yahoo_get_federation_from_name(who) != YAHOO_FEDERATION_NONE) + if (!who) return FALSE; return TRUE; } diff --git a/libpurple/protocols/yahoo/yahoo_filexfer.h b/libpurple/protocols/yahoo/yahoo_filexfer.h --- a/libpurple/protocols/yahoo/yahoo_filexfer.h +++ b/libpurple/protocols/yahoo/yahoo_filexfer.h @@ -39,8 +39,6 @@ PurpleXfer *yahoo_new_xfer(PurpleConnect /** * Returns TRUE if the buddy can receive file, FALSE otherwise. - * Federated users cannot receive files. So this will return FALSE only - * for them. * * @param gc The connection * @param who The name of the remote user diff --git a/libpurple/protocols/yahoo/yahoo_friend.c b/libpurple/protocols/yahoo/yahoo_friend.c --- a/libpurple/protocols/yahoo/yahoo_friend.c +++ b/libpurple/protocols/yahoo/yahoo_friend.c @@ -153,7 +153,6 @@ void yahoo_process_presence(PurpleConnec char *temp = NULL; char *who = NULL; int value = 0; - YahooFederation fed = YAHOO_FEDERATION_NONE; while (l) { struct yahoo_pair *pair = l->data; @@ -170,9 +169,6 @@ void yahoo_process_presence(PurpleConnec case 31: value = strtol(pair->value, NULL, 10); break; - case 241: - fed = strtol(pair->value, NULL, 10); - break; } l = l->next; @@ -183,23 +179,8 @@ void yahoo_process_presence(PurpleConnec return; } - switch (fed) { - case YAHOO_FEDERATION_MSN: - who = g_strconcat("msn/", temp, NULL); - break; - case YAHOO_FEDERATION_OCS: - who = g_strconcat("ocs/", temp, NULL); - break; - case YAHOO_FEDERATION_IBM: - who = g_strconcat("ibm/", temp, NULL); - break; - case YAHOO_FEDERATION_PBX: - who = g_strconcat("pbx/", temp, NULL); - break; - case YAHOO_FEDERATION_NONE: - who = g_strdup(temp); - break; - } + who = g_strdup(temp); + g_return_if_fail(who != NULL); f = yahoo_friend_find(gc, who); @@ -246,10 +227,7 @@ void yahoo_friend_update_presence(Purple if (!f) return; - if(f->fed != YAHOO_FEDERATION_NONE) - temp = name+4; - else - temp = name; + temp = name; /* No need to change the value if it is already correct */ if (f->presence == presence) { @@ -275,20 +253,12 @@ void yahoo_friend_update_presence(Purple if (f->presence == YAHOO_PRESENCE_PERM_OFFLINE) { pkt = yahoo_packet_new(YAHOO_SERVICE_PRESENCE_PERM, YAHOO_STATUS_AVAILABLE, yd->session_id); - if(f->fed) - yahoo_packet_hash(pkt, "ssssssiss", - 1, purple_connection_get_display_name(gc), - 31, "2", 13, "2", - 302, "319", 300, "319", - 7, temp, 241, f->fed, - 301, "319", 303, "319"); - else - yahoo_packet_hash(pkt, "ssssssss", - 1, purple_connection_get_display_name(gc), - 31, "2", 13, "2", - 302, "319", 300, "319", - 7, temp, - 301, "319", 303, "319"); + yahoo_packet_hash(pkt, "ssssssss", + 1, purple_connection_get_display_name(gc), + 31, "2", 13, "2", + 302, "319", 300, "319", + 7, temp, + 301, "319", 303, "319"); yahoo_packet_send_and_free(pkt, yd); } @@ -302,20 +272,12 @@ void yahoo_friend_update_presence(Purple pkt = yahoo_packet_new(service, YAHOO_STATUS_AVAILABLE, yd->session_id); - if(f->fed) - yahoo_packet_hash(pkt, "ssssssiss", - 1, purple_connection_get_display_name(gc), - 31, thirtyone, 13, thirteen, - 302, "319", 300, "319", - 7, temp, 241, f->fed, - 301, "319", 303, "319"); - else - yahoo_packet_hash(pkt, "ssssssss", - 1, purple_connection_get_display_name(gc), - 31, thirtyone, 13, thirteen, - 302, "319", 300, "319", - 7, temp, - 301, "319", 303, "319"); + yahoo_packet_hash(pkt, "ssssssss", + 1, purple_connection_get_display_name(gc), + 31, thirtyone, 13, thirteen, + 302, "319", 300, "319", + 7, temp, + 301, "319", 303, "319"); yahoo_packet_send_and_free(pkt, yd); } diff --git a/libpurple/protocols/yahoo/yahoo_friend.h b/libpurple/protocols/yahoo/yahoo_friend.h --- a/libpurple/protocols/yahoo/yahoo_friend.h +++ b/libpurple/protocols/yahoo/yahoo_friend.h @@ -55,7 +55,6 @@ typedef struct _YahooFriend { gchar *ip; gboolean bicon_sent_request; YahooPresenceVisibility presence; - YahooFederation fed; long int version_id; YahooPersonalDetails ypd; YahooP2PStatus p2p_status; diff --git a/libpurple/protocols/yahoo/ymsg.c b/libpurple/protocols/yahoo/ymsg.c --- a/libpurple/protocols/yahoo/ymsg.c +++ b/libpurple/protocols/yahoo/ymsg.c @@ -159,8 +159,6 @@ static void yahoo_process_status(PurpleC char *name = NULL; gboolean unicode = FALSE; char *message = NULL; - YahooFederation fed = YAHOO_FEDERATION_NONE; - char *fedname = NULL; if (pkt->service == YAHOO_SERVICE_LOGOFF && pkt->status == -1) { if (!purple_account_get_remember_password(account)) @@ -190,38 +188,8 @@ static void yahoo_process_status(PurpleC name = message = NULL; f = NULL; if (pair->value && g_utf8_validate(pair->value, -1, NULL)) { - GSList *tmplist; - name = pair->value; - - /* Look ahead to see if we have the federation info about the buddy */ - for (tmplist = l->next; tmplist; tmplist = tmplist->next) { - struct yahoo_pair *p = tmplist->data; - if (p->key == 7) - break; - if (p->key == 241) { - fed = strtol(p->value, NULL, 10); - g_free(fedname); - switch (fed) { - case YAHOO_FEDERATION_MSN: - name = fedname = g_strconcat("msn/", name, NULL); - break; - case YAHOO_FEDERATION_OCS: - name = fedname = g_strconcat("ocs/", name, NULL); - break; - case YAHOO_FEDERATION_IBM: - name = fedname = g_strconcat("ibm/", name, NULL); - break; - case YAHOO_FEDERATION_NONE: - default: - fedname = NULL; - break; - } - break; - } - } f = yahoo_friend_find_or_new(gc, name); - f->fed = fed; } break; case 10: /* state */ @@ -379,8 +347,6 @@ static void yahoo_process_status(PurpleC if(f && strtol(pair->value, NULL, 10)) f->version_id = strtol(pair->value, NULL, 10); break; - case 241: /* Federated network buddy belongs to */ - break; /* We process this when get '7' */ default: purple_debug_warning("yahoo", "Unknown status key %d\n", pair->key); @@ -399,8 +365,6 @@ static void yahoo_process_status(PurpleC if (name) /* update the last buddy */ yahoo_update_status(gc, name, f); } - - g_free(fedname); } static void yahoo_do_group_check(PurpleAccount *account, GHashTable *ht, const char *name, const char *group) @@ -507,7 +471,6 @@ static void yahoo_process_list_15(Purple char *temp = NULL; YahooFriend *f = NULL; /* It's your friends. They're going to want you to share your StarBursts. */ /* But what if you had no friends? */ - YahooFederation fed = YAHOO_FEDERATION_NONE; int stealth = 0; ht = g_hash_table_new_full(g_str_hash, g_str_equal, g_free, (GDestroyNotify) g_slist_free); @@ -532,23 +495,8 @@ static void yahoo_process_list_15(Purple break; case 301: /* This is 319 before all s/n's in a group after the first. It is followed by an identical 300. */ if(temp != NULL) { - switch (fed) { - case YAHOO_FEDERATION_MSN: - norm_bud = g_strconcat("msn/", temp, NULL); - break; - case YAHOO_FEDERATION_OCS: - norm_bud = g_strconcat("ocs/", temp, NULL); - break; - case YAHOO_FEDERATION_IBM: - norm_bud = g_strconcat("ibm/", temp, NULL); - break; - case YAHOO_FEDERATION_PBX: - norm_bud = g_strconcat("pbx/", temp, NULL); - break; - case YAHOO_FEDERATION_NONE: - norm_bud = g_strdup(temp); - break; - } + norm_bud = g_strdup(temp); + if (yd->current_list15_grp) { /* This buddy is in a group */ f = yahoo_friend_find_or_new(gc, norm_bud); @@ -563,19 +511,12 @@ static void yahoo_process_list_15(Purple purple_blist_add_buddy(b, NULL, g, NULL); } yahoo_do_group_check(account, ht, norm_bud, yd->current_list15_grp); - if(fed) { - f->fed = fed; - purple_debug_info("yahoo", "Setting federation to %d\n", f->fed); - } + if(stealth == 2) f->presence = YAHOO_PRESENCE_PERM_OFFLINE; - /* set p2p status not connected and no p2p packet sent */ - if(fed == YAHOO_FEDERATION_NONE) { _______________________________________________ Commits mailing list [email protected] https://pidgin.im/cgi-bin/mailman/listinfo/commits