changeset 30206:545ce15b619f

merge of '18ddd668ba1cc77ed0a0595a053f8a2879dddfd0' and '63b644ac7791059c9fad6128d17bccebca8ad71a'
author Paul Aurich <paul@darkrain42.org>
date Thu, 17 Jun 2010 21:23:01 +0000
parents 33989e3a449b (diff) 738741a7a692 (current diff)
children 62f7ea77feb3 509c63006b1f c4cbe5f992ce
files
diffstat 3 files changed, 93 insertions(+), 94 deletions(-) [+]
line wrap: on
line diff
--- a/libpurple/protocols/jabber/jabber.c	Thu Jun 17 21:21:30 2010 +0000
+++ b/libpurple/protocols/jabber/jabber.c	Thu Jun 17 21:23:01 2010 +0000
@@ -218,22 +218,25 @@
 
 	account = purple_connection_get_account(js->gc);
 
-	if((starttls = xmlnode_get_child(packet, "starttls"))) {
-		if(purple_ssl_is_supported()) {
-			jabber_send_raw(js,
-					"<starttls xmlns='urn:ietf:params:xml:ns:xmpp-tls'/>", -1);
-			return TRUE;
-		} else if(xmlnode_get_child(starttls, "required")) {
-			purple_connection_error_reason(js->gc,
+	if(purple_ssl_is_supported()) {
+		jabber_send_raw(js,
+				"<starttls xmlns='urn:ietf:params:xml:ns:xmpp-tls'/>", -1);
+		return TRUE;
+	}
+
+	starttls = xmlnode_get_child(packet, "starttls");
+	if(xmlnode_get_child(starttls, "required")) {
+		purple_connection_error_reason(js->gc,
 				PURPLE_CONNECTION_ERROR_NO_SSL_SUPPORT,
 				_("Server requires TLS/SSL, but no TLS/SSL support was found."));
-			return TRUE;
-		} else if(purple_account_get_bool(account, "require_tls", JABBER_DEFAULT_REQUIRE_TLS)) {
-			purple_connection_error_reason(js->gc,
-				 PURPLE_CONNECTION_ERROR_NO_SSL_SUPPORT,
+		return TRUE;
+	}
+
+	if(purple_account_get_bool(account, "require_tls", JABBER_DEFAULT_REQUIRE_TLS)) {
+		purple_connection_error_reason(js->gc,
+				PURPLE_CONNECTION_ERROR_NO_SSL_SUPPORT,
 				_("You require encryption, but no TLS/SSL support was found."));
-			return TRUE;
-		}
+		return TRUE;
 	}
 
 	return FALSE;
--- a/libpurple/protocols/oscar/family_icbm.c	Thu Jun 17 21:21:30 2010 +0000
+++ b/libpurple/protocols/oscar/family_icbm.c	Thu Jun 17 21:23:01 2010 +0000
@@ -2701,54 +2701,54 @@
 
 	if (channel == 0x0002)
 	{
-	 	hdrlen = byte_stream_getle16(bs);
-	 	if ( ((hdrlen == 27 ) && (bs->len > (27 + 51)))) {
-	 		byte_stream_advance(bs, 51);
-	 		num1 = byte_stream_getle16(bs); 
-	 		num2 = byte_stream_getle16(bs);
-	 		purple_debug_misc("oscar", "X-Status: Num1 %i, num2 %i\n",num1, num2);
-	 		
-	 		if(((num1 == 0x4f00)&&(num2 == 0x3b00))) {
-		 		byte_stream_advance(bs, 86);	
-		 		curpos = byte_stream_curpos(bs);
-		 		xml = byte_stream_getstr(bs, bs->len - curpos);
-		 		purple_debug_misc("oscar", "X-Status: Received XML reply\n");
-		 		if(xml) {
- 				/* purple_debug_misc("oscar", "X-Status: XML reply: %s\n", (const char*) xml); */
- 					if ((desc=strstr(xml,"&lt;desc&gt;")) != NULL) {
- 						temp=strstr(xml,"&lt;/desc&gt;");
- 						temp[0]=0;
- 						desc=desc+12;
- 					}
- 					if ((title=strstr(xml,"&lt;title&gt;")) != NULL) {
- 						temp=strstr(xml,"&lt;/title&gt;");
- 						temp[0]=0;
- 						title=title+13;
- 					} else {
- 						title="";
- 					}
- 					strcpy(xml,title);
+		hdrlen = byte_stream_getle16(bs);
+		if ( ((hdrlen == 27 ) && (bs->len > (27 + 51)))) {
+			byte_stream_advance(bs, 51);
+			num1 = byte_stream_getle16(bs);
+			num2 = byte_stream_getle16(bs);
+			purple_debug_misc("oscar", "X-Status: Num1 %i, num2 %i\n",num1, num2);
+
+			if(((num1 == 0x4f00)&&(num2 == 0x3b00))) {
+				byte_stream_advance(bs, 86);
+				curpos = byte_stream_curpos(bs);
+				xml = byte_stream_getstr(bs, bs->len - curpos);
+				purple_debug_misc("oscar", "X-Status: Received XML reply\n");
+				if(xml) {
+				/* purple_debug_misc("oscar", "X-Status: XML reply: %s\n", (const char*) xml); */
+					if ((desc=strstr(xml,"&lt;desc&gt;")) != NULL) {
+						temp=strstr(xml,"&lt;/desc&gt;");
+						temp[0]=0;
+						desc=desc+12;
+					}
+					if ((title=strstr(xml,"&lt;title&gt;")) != NULL) {
+						temp=strstr(xml,"&lt;/title&gt;");
+						temp[0]=0;
+						title=title+13;
+					} else {
+						title="";
+					}
+					strcpy(xml,title);
 					if (desc) {
- 						strcat(xml, " - ");
- 						strcat(xml, desc);
+						strcat(xml, " - ");
+						strcat(xml, desc);
 					}
- 					purple_debug_misc("oscar", "X-Status reply: %s\n", (const char*)xml);
- 					account = purple_connection_get_account(od->gc);
- 					buddy = purple_find_buddy(account, bn);
- 					presence = purple_buddy_get_presence(buddy);
- 					status = purple_presence_get_active_status(presence);
- 					purple_prpl_got_user_status(account, bn,
-  					    purple_status_get_id(status), "message", xml, NULL);
-		   		} else {
-			 		purple_debug_misc("oscar", "X-Status: Can't get XML reply string\n");
+					purple_debug_misc("oscar", "X-Status reply: %s\n", (const char*)xml);
+					account = purple_connection_get_account(od->gc);
+					buddy = purple_find_buddy(account, bn);
+					presence = purple_buddy_get_presence(buddy);
+					status = purple_presence_get_active_status(presence);
+					purple_prpl_got_user_status(account, bn,
+					    purple_status_get_id(status), "message", xml, NULL);
+				} else {
+					purple_debug_misc("oscar", "X-Status: Can't get XML reply string\n");
 				}
-	 		} else {
-		 		purple_debug_misc("oscar", "X-Status: 0x0004, 0x000b not an xstatus reply\n" );
+			} else {
+				purple_debug_misc("oscar", "X-Status: 0x0004, 0x000b not an xstatus reply\n" );
 		 /*		if ((userfunc = aim_callhandler(od, snac->family, snac->subtype)))
-		 		ret = userfunc(od, conn, frame, channel, sn, reason); */
+				ret = userfunc(od, conn, frame, channel, sn, reason); */
 			}
-		
-	 	}
+
+		}
 
 	} else if (channel == 0x0004) { /* ICQ message */
 		switch (reason) {
@@ -2930,12 +2930,12 @@
 	char *statxml;
 	int xmllen;
 
-	static const guint8 pluginid[] = 
+	static const guint8 pluginid[] =
 	{
-	0x09, 0x46, 0x13, 0x49, 0x4C, 0x7F, 0x11, 0xD1, 
+	0x09, 0x46, 0x13, 0x49, 0x4C, 0x7F, 0x11, 0xD1,
 	0x82, 0x22, 0x44, 0x45, 0x53, 0x54, 0x00, 0x00
 	};
-	
+
 	static const guint8 c_plugindata[] =
 	{
 	0x1B, 0x00, 0x0A,
@@ -2949,14 +2949,14 @@
 	0x72, 0x72, 0x69, 0x76, 0x65, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
 	0x00, 0x00, 0x00, 0x00, 0x14, 0x01, 0x00, 0x00, 0x10, 0x01, 0x00, 0x00
 	};
-	
+
 	if (!od || !(conn = flap_connection_findbygroup(od, 0x0004)))
 		return -EINVAL;
 
 	if (!sn)
 		return -EINVAL;
 
-	fmt =  "<N><QUERY>&lt;Q&gt;&lt;PluginID&gt;srvMng&lt;/PluginID&gt;&lt;/Q&gt;</QUERY><NOTIFY>&lt;srv&gt;&lt;id&gt;cAwaySrv&lt;/id&gt;&lt;req&gt;&lt;id&gt;AwayStat&lt;/id&gt;&lt;trans&gt;2&lt;/trans&gt;&lt;senderId&gt;%s&lt;/senderId&gt;&lt;/req&gt;&lt;/srv&gt;</NOTIFY></N>\r\n";	
+	fmt = "<N><QUERY>&lt;Q&gt;&lt;PluginID&gt;srvMng&lt;/PluginID&gt;&lt;/Q&gt;</QUERY><NOTIFY>&lt;srv&gt;&lt;id&gt;cAwaySrv&lt;/id&gt;&lt;req&gt;&lt;id&gt;AwayStat&lt;/id&gt;&lt;trans&gt;2&lt;/trans&gt;&lt;senderId&gt;%s&lt;/senderId&gt;&lt;/req&gt;&lt;/srv&gt;</NOTIFY></N>\r\n";
 
 	account = purple_connection_get_account(od->gc);
 	xmllen = strlen(fmt) - 2 + strlen(account->username);
@@ -2970,7 +2970,7 @@
 					  + 2 + 2 + 8 + 16 + 2 + 2 + 2 + 2 + 2
 					  + 2 + 2 + sizeof(c_plugindata) + xmllen
 					  + 2 + 2);
- 
+
 	snacid = aim_cachesnac(od, 0x0004, 0x0006, 0x0000, NULL, 0);
 	aim_im_puticbm(&bs, cookie, 0x0002, sn);
 
@@ -2980,24 +2980,23 @@
 	byte_stream_put16(&header, 0x0000); /* Message Type: Request */
 	byte_stream_putraw(&header, cookie, sizeof(cookie)); /* Message ID */
 	byte_stream_putraw(&header, pluginid, sizeof(pluginid)); /* Plugin ID */
-	
+
 	aim_tlvlist_add_16(&inner_tlvlist, 0x000a, 0x0001);
 	aim_tlvlist_add_noval(&inner_tlvlist, 0x000f);
-	
+
 	/* Add Plugin Specific Data */
 	byte_stream_putraw(&plugindata, c_plugindata, sizeof(c_plugindata)); /* Content of TLV 0x2711 */
 	byte_stream_putstr(&plugindata, statxml);
 
 	aim_tlvlist_add_raw(&inner_tlvlist, 0x2711, (sizeof(c_plugindata) + xmllen), plugindata.data);
-	
+
 	aim_tlvlist_write(&header, &inner_tlvlist);
-	
-	
+
 	aim_tlvlist_add_raw(&outer_tlvlist, 0x0005, byte_stream_curpos(&header), header.data);
 	aim_tlvlist_add_noval(&outer_tlvlist, 0x0003);		/* Empty TLV 0x0003 */
-	
+
 	aim_tlvlist_write(&bs, &outer_tlvlist);
-	
+
 	purple_debug_misc("oscar", "X-Status Request\n");
 	flap_connection_send_snac_with_priority(od, conn, 0x0004, 0x0006, 0x0000, snacid, &bs, TRUE);
 
@@ -3024,39 +3023,38 @@
    char *statxml;
 	const char *title;
 	int len;
-	
+
 	static const guint8 plugindata[] = {
 	0x1B, 0x00,
 	0x09, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-	0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 
+	0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
 	0x01, 0x00, 0x00, 0x00, 0x00, 0xF9, 0xD1, 0x0E, 0x00, 0xF9, 0xD1,
 	0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-	0x00, 0x1A, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x4F, 
-	0x00, 0x3B, 0x60, 0xB3, 0xEF, 0xD8, 0x2A, 0x6C, 0x45, 0xA4, 0xE0, 
-	0x9C, 0x5A, 0x5E, 0x67, 0xE8, 0x65, 0x08, 0x00, 0x2A, 0x00, 0x00, 
-	0x00, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x20, 0x50, 0x6C, 0x75, 
-	0x67, 0x2D, 0x69, 0x6E, 0x3A, 0x20, 0x52, 0x65, 0x6D, 0x6F, 0x74, 
+	0x00, 0x1A, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x4F,
+	0x00, 0x3B, 0x60, 0xB3, 0xEF, 0xD8, 0x2A, 0x6C, 0x45, 0xA4, 0xE0,
+	0x9C, 0x5A, 0x5E, 0x67, 0xE8, 0x65, 0x08, 0x00, 0x2A, 0x00, 0x00,
+	0x00, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x20, 0x50, 0x6C, 0x75,
+	0x67, 0x2D, 0x69, 0x6E, 0x3A, 0x20, 0x52, 0x65, 0x6D, 0x6F, 0x74,
 	0x65, 0x20, 0x4E, 0x6F, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74,
 	0x69, 0x6F, 0x6E, 0x20, 0x41, 0x72, 0x72, 0x69, 0x76, 0x65, 0x00,
 	0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
 	0x00, 0x00, 0x00, 0xF3, 0x01, 0x00, 0x00, 0xEF, 0x01, 0x00, 0x00
-	};	
+	};
 
 	fmt = "<NR><RES>&lt;ret event='OnRemoteNotification'&gt;&lt;srv&gt;&lt;id&gt;cAwaySrv&lt;/id&gt;&lt;val srv_id='cAwaySrv'&gt;&lt;Root&gt;&lt;CASXtraSetAwayMessage&gt;&lt;/CASXtraSetAwayMessage&gt;&l t;uin&gt;%s&lt;/uin&gt;&lt;index&gt;1&lt;/index&gt;&lt;title&gt;%s&lt;/title&gt;&lt;desc&gt;%s&lt;/desc&gt;&lt;/Root&gt;&lt;/val&gt;&lt;/srv&gt;&lt;srv&gt;&lt;id&gt;cRandomizerSrv&lt;/id&gt;&lt;val srv_id='cRandomizerSrv'&gt;undefined&lt;/val&gt;&lt;/srv&gt;&lt;/ret&gt;</RES></NR>\r\n";
-	
-	
+
 	if (!od || !(conn = flap_connection_findbygroup(od, 0x0002)))
 		return -EINVAL;
 
 	if (!sn)
 		return -EINVAL;
-		
+
 	account = purple_connection_get_account(od->gc);
 	if(!account) return -EINVAL;
-	
+
 /*	if (!strcmp(account->username, sn))
 		icq_im_xstatus_request(od, sn); */
-	
+
 	status  = purple_presence_get_active_status(account->presence);
 	if (!status) return -EINVAL;
    title = purple_status_get_name(status);
@@ -3068,7 +3066,7 @@
 	len = strlen(fmt)-6+strlen(account->username)+strlen(title)+strlen(msg);
 	statxml = (char*) g_malloc(len);
 
-	snprintf(statxml, len, fmt, 
+	snprintf(statxml, len, fmt,
 		account->username, title, msg);
 
 	purple_debug_misc("oscar", "X-Status AutoReply: %s, %s\n", formatted_msg, msg);
@@ -3080,7 +3078,7 @@
 	byte_stream_put16(&bs, 0x0003);
 	byte_stream_putraw(&bs, plugindata, sizeof(plugindata));
 	byte_stream_putraw(&bs, (const guint8*)statxml, strlen(statxml));
-	
+
 	flap_connection_send_snac_with_priority(od, conn, 0x0004, 0x000b, 0x0000, snacid, &bs, TRUE);
 
 	g_free(statxml);
--- a/libpurple/protocols/yahoo/libymsg.c	Thu Jun 17 21:21:30 2010 +0000
+++ b/libpurple/protocols/yahoo/libymsg.c	Thu Jun 17 21:23:01 2010 +0000
@@ -401,15 +401,13 @@
 	PurpleBuddy *b;
 	PurpleGroup *g;
 	GSList *list, *i;
-	gboolean onlist = 0;
-	char *oname = NULL;
-	char **oname_p = &oname;
-	GSList **list_p = &list;
-
-	if (!g_hash_table_lookup_extended(ht, purple_normalize(account, name), (gpointer *) oname_p, (gpointer *) list_p))
+	gboolean onlist = FALSE;
+	char *oname;
+
+	if (g_hash_table_lookup_extended(ht, purple_normalize(account, name), (gpointer *)&oname, (gpointer *)&list))
+		g_hash_table_steal(ht, oname);
+	else
 		list = purple_find_buddies(account, name);
-	else
-		g_hash_table_steal(ht, name);
 
 	for (i = list; i; i = i->next) {
 		b = i->data;
@@ -418,7 +416,7 @@
 			purple_debug_misc("yahoo",
 				"Oh good, %s is in the right group (%s).\n", name, group);
 			list = g_slist_delete_link(list, i);
-			onlist = 1;
+			onlist = TRUE;
 			break;
 		}
 	}
@@ -438,7 +436,7 @@
 		if (!oname)
 			oname = g_strdup(purple_normalize(account, name));
 		g_hash_table_insert(ht, oname, list);
-	} else if (oname)
+	} else
 		g_free(oname);
 }