summaryrefslogtreecommitdiff
path: root/libpurple/protocols/yahoo/yahoo.c
diff options
context:
space:
mode:
Diffstat (limited to 'libpurple/protocols/yahoo/yahoo.c')
-rw-r--r--libpurple/protocols/yahoo/yahoo.c50
1 files changed, 36 insertions, 14 deletions
diff --git a/libpurple/protocols/yahoo/yahoo.c b/libpurple/protocols/yahoo/yahoo.c
index 5156832f6f..e997d527aa 100644
--- a/libpurple/protocols/yahoo/yahoo.c
+++ b/libpurple/protocols/yahoo/yahoo.c
@@ -1471,13 +1471,24 @@ static void yahoo_process_auth_old(PurpleConnection *gc, const char *seed)
to_y64(result96, digest, 16);
pack = yahoo_packet_new(YAHOO_SERVICE_AUTHRESP, YAHOO_STATUS_AVAILABLE, 0);
- yahoo_packet_hash(pack, "ssssss",
- 0, name,
- 6, result6,
- 96, result96,
- 1, name,
- 244, YAHOO_CLIENT_VERSION_ID,
- 135, YAHOO_CLIENT_VERSION);
+
+ if(yd->jp) {
+ yahoo_packet_hash(pack, "sssss",
+ 0, name,
+ 6, result6,
+ 96, result96,
+ 1, name,
+ 135, YAHOOJP_CLIENT_VERSION);
+ } else {
+ yahoo_packet_hash(pack, "ssssss",
+ 0, name,
+ 6, result6,
+ 96, result96,
+ 1, name,
+ 244, YAHOO_CLIENT_VERSION_ID,
+ 135, YAHOO_CLIENT_VERSION);
+ }
+
yahoo_packet_send_and_free(pack, yd);
g_free(hash_string_p);
@@ -1923,13 +1934,24 @@ static void yahoo_process_auth_new(PurpleConnection *gc, const char *seed)
}
purple_debug_info("yahoo", "yahoo status: %d\n", yd->current_status);
pack = yahoo_packet_new(YAHOO_SERVICE_AUTHRESP, yd->current_status, 0);
- yahoo_packet_hash(pack, "ssssss",
- 0, name,
- 6, resp_6,
- 96, resp_96,
- 1, name,
- 244, YAHOO_CLIENT_VERSION_ID,
- 135, YAHOO_CLIENT_VERSION);
+
+ if(yd->jp) {
+ yahoo_packet_hash(pack, "sssss",
+ 0, name,
+ 6, resp_6,
+ 96, resp_96,
+ 1, name,
+ 135, YAHOOJP_CLIENT_VERSION);
+ } else {
+ yahoo_packet_hash(pack, "ssssss",
+ 0, name,
+ 6, resp_6,
+ 96, resp_96,
+ 1, name,
+ 244, YAHOO_CLIENT_VERSION_ID,
+ 135, YAHOO_CLIENT_VERSION);
+ }
+
if (yd->picture_checksum)
yahoo_packet_hash_int(pack, 192, yd->picture_checksum);