[Telepathy-commits] [telepathy-gabble/master] gibber-listener: check getsockname return value

Guillaume Desmottes guillaume.desmottes at collabora.co.uk
Wed Mar 18 07:38:09 PDT 2009


---
 lib/gibber/gibber-listener.c |   11 ++++++++++-
 1 files changed, 10 insertions(+), 1 deletions(-)

diff --git a/lib/gibber/gibber-listener.c b/lib/gibber/gibber-listener.c
index ff27c06..dedc2b6 100644
--- a/lib/gibber/gibber-listener.c
+++ b/lib/gibber/gibber-listener.c
@@ -301,7 +301,16 @@ add_listener (GibberListener *self, int family, int type, int protocol,
       goto error;
     }
 
-  getsockname (fd, &baddress.addr, &baddrlen);
+  ret = getsockname (fd, &baddress.addr, &baddrlen);
+  if (ret == -1)
+    {
+      DEBUG ("getsockname failed: %s", g_strerror (errno));
+      g_set_error (error, GIBBER_LISTENER_ERROR,
+          GIBBER_LISTENER_ERROR_FAILED,
+          "%s", g_strerror (errno));
+      goto error;
+    }
+
   getnameinfo (&baddress.addr, baddrlen, name, sizeof (name),
       portname, sizeof (portname), NI_NUMERICHOST | NI_NUMERICSERV);
 
-- 
1.5.6.5




More information about the telepathy-commits mailing list