[telepathy-salut/master] gibber-listener: check getsockname return value

Guillaume Desmottes guillaume.desmottes at collabora.co.uk
Wed Mar 18 08:11:19 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..0bb209a 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