[Telepathy-commits] [telepathy-salut/master] avahi-contact: _compare_address: addr_a have to be a sockaddr_storage to be able to store an IPv6 address

Guillaume Desmottes guillaume.desmottes at collabora.co.uk
Mon Feb 2 03:53:47 PST 2009


---
 src/salut-avahi-contact.c |    9 +++++----
 1 files changed, 5 insertions(+), 4 deletions(-)

diff --git a/src/salut-avahi-contact.c b/src/salut-avahi-contact.c
index b007627..0aba7bf 100644
--- a/src/salut-avahi-contact.c
+++ b/src/salut-avahi-contact.c
@@ -211,7 +211,7 @@ static gint
 _compare_address (GaServiceResolver *resolver,
                   struct sockaddr *addr_b)
 {
-  struct sockaddr addr_a;
+  struct sockaddr_storage addr_a;
   AvahiIfIndex ifindex;
   AvahiAddress address;
   uint16_t port;
@@ -220,12 +220,13 @@ _compare_address (GaServiceResolver *resolver,
   if (!ga_service_resolver_get_address (resolver, &address, &port))
     return -1;
 
-  _avahi_address_to_sockaddr (&address, port, ifindex, &addr_a);
+  _avahi_address_to_sockaddr (&address, port, ifindex,
+      (struct sockaddr *) &addr_a);
 
-  if (addr_a.sa_family != addr_b->sa_family)
+  if (addr_a.ss_family != addr_b->sa_family)
     return -1;
 
-  switch (addr_a.sa_family)
+  switch (addr_a.ss_family)
     {
       case AF_INET:
         {
-- 
1.5.6.5



More information about the Telepathy-commits mailing list