libpurple/protocols/bonjour/mdns_avahi.c

changeset 32734
2af6cc60b05d
parent 32260
5b0ecccb3bbb
parent 32058
95953bd2f239
child 34728
8efd73063ecf
--- a/libpurple/protocols/bonjour/mdns_avahi.c	Tue Nov 29 03:59:09 2011 +0000
+++ b/libpurple/protocols/bonjour/mdns_avahi.c	Wed Nov 30 01:16:33 2011 +0000
@@ -179,6 +179,9 @@
 			ip[0] = '\0';
 			avahi_address_snprint(ip, AVAHI_ADDRESS_STR_MAX, a);
 
+			if (protocol == AVAHI_PROTO_INET6)
+				append_iface_if_linklocal(ip, interface);
+
 			purple_debug_info("bonjour", "_resolve_callback - name:%s ip:%s prev_ip:%s\n",
 				name, ip, rd->ip);
 
@@ -190,7 +193,7 @@
 				}
 				/* IPv6 goes at the front of the list and IPv4 at the end so that we "prefer" IPv6, if present */
 				if (protocol == AVAHI_PROTO_INET6) {
-					rd->ip = g_strdup_printf("%s%%%d", ip, interface);
+					rd->ip = g_strdup_printf("%s", ip);
 					bb->ips = g_slist_prepend(bb->ips, (gchar *) rd->ip);
 				} else {
 					rd->ip = g_strdup(ip);

mercurial