pidgin.vv.yahoo.voice: 285eab79: Made it compile, hopefully it will work ...

malu at pidgin.im malu at pidgin.im
Sun Aug 22 16:50:52 EDT 2010


----------------------------------------------------------------------
Revision: 285eab797e8f78a9bccc49dd3bc6d48384d7933f
Parent:   fe0f41345b6ef1c0faf877eb724a96bf26171aad
Author:   malu at pidgin.im
Date:     08/22/10 16:49:34
Branch:   im.pidgin.pidgin.vv.yahoo.voice
URL: http://d.pidgin.im/viewmtn/revision/info/285eab797e8f78a9bccc49dd3bc6d48384d7933f

Changelog: 

Made it compile, hopefully it will work too :)

Changes against parent fe0f41345b6ef1c0faf877eb724a96bf26171aad

  patched  libpurple/protocols/yahoo/libyahoo.c
  patched  libpurple/protocols/yahoo/libymsg.c
  patched  libpurple/protocols/yahoo/libymsg.h

-------------- next part --------------
============================================================
--- libpurple/protocols/yahoo/libymsg.c	9cb84f68a09a4f75f453c3ea6b1d24e5fa7be1b1
+++ libpurple/protocols/yahoo/libymsg.c	42e18ba86b93a0280d9fd335dd27ff3e39204399
@@ -1810,9 +1810,11 @@ static void yahoo_auth16_stage2(PurpleUt
 		int totalelements = 0;
 		int response_no = -1;
 		char *crypt = NULL;
+		char *crumb = NULL;
 		
 		if(g_strv_length(splits) > 1) {
 			yd->cookie_b = yahoo_auth16_get_cookie_b(splits[0]);
+			yd->cookie_crumb = g_strdup(split_data[1] + strlen("crumb="));
 			split_data = g_strsplit(splits[1], "\r\n", -1);
 			totalelements = g_strv_length(split_data);
 		}
@@ -1875,7 +1877,7 @@ static void yahoo_auth16_stage2(PurpleUt
 					break;
 				default:
 					/* if we have everything we need, why not try to login irrespective of response */
-					if((crumb != NULL) && (yd->cookie_y != NULL) && (yd->cookie_t != NULL)) {
+					if((yd->cookie_crumb != NULL) && (yd->cookie_y != NULL) && (yd->cookie_t != NULL)) {
 						try_login_on_error = TRUE;
 						break;
 					}
@@ -1894,7 +1896,7 @@ static void yahoo_auth16_stage2(PurpleUt
 			}
 		}
 
-		crypt = g_strconcat(crumb, auth_data->seed, NULL);
+		crypt = g_strconcat(yd->cookie_crumb, auth_data->seed, NULL);
 		yahoo_auth16_stage3(gc, crypt);
 		g_free(crypt);
 		g_free(crumb);
============================================================
--- libpurple/protocols/yahoo/libymsg.h	b5e4d478f865a74cddf07cbc6adeb6f9e34ef17c
+++ libpurple/protocols/yahoo/libymsg.h	885cc4c6e3e37e1f7bb1ce4ef2aa0045ea5c67c5
@@ -225,6 +225,7 @@ typedef struct {
 	char *cookie_y;
 	char *cookie_t;
 	char *cookie_b;
+	char *cookie_crumb;
 	int session_id;
 	gboolean jp;
 	gboolean wm; /* connected w/ web messenger method */
============================================================
--- libpurple/protocols/yahoo/libyahoo.c	5a9850d687b6e5f6057558f4e9a0766441e995b4
+++ libpurple/protocols/yahoo/libyahoo.c	cfbdb341bbd82367d83160ed43a6df49a2234cea
@@ -263,15 +263,11 @@ static PurplePluginProtocolInfo prpl_inf
 
 	sizeof(PurplePluginProtocolInfo),       /* struct_size */
 	yahoo_get_account_text_table,    /* get_account_text_table */
-	NULL, /* initiate_media */
-	NULL,  /* get_media_caps */
+	yahoo_initiate_media,            /* initiate_media */
+	yahoo_get_media_caps,            /* can_do_media */
 	NULL,  /* get_moods */
 	NULL,  /* set_public_alias */
 	NULL   /* get_public_alias */
-	NULL, /* initiate_media */
-	NULL  /* can_do_media */
-	yahoo_initiate_media,            /* initiate_media */
-	yahoo_get_media_caps,            /* can_do_media */
 };
 
 static PurplePluginInfo info =


More information about the Commits mailing list